Tipos

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Open Cloud representa solicitações e cargas de resposta como JSON padrão . Os tipos JSON padrão são texto, valores, objetos, matrizes, números e cadeias de caracteres. Alguns tipos têm considerações especiais para representar tipos específicos de dados, que são descritos nas seções a seguir.

Selo de Tempo

Usa RFC 3339, onde a saída gerada sempre será Z-normalizada e usa 0, 3, 6 ou 9 dígitos fracionários. Offsets diferentes de "Z" também são aceitos.

Exemplo de carimbo de tempo

{ "timestamp": "1972-01-01T10:00:20.021Z" }

Duração

A saída gerada sempre contém 0, 3, 6 ou 9 dígitos fracionários, dependendo da precisão necessária, seguidos pelo sufixo "s." Quaisquer dígitos fracionários (também nenhum) são aceitos, desde que se encaixem na precisão de nanossegundos e o sufixo "s" seja necessário. O intervalo deve ser de -315,576,000,000 a 315,576,000,000 segundos, inclusive.

Duração de Exemplo

{
"duration-9": "1.000340012s",
"duration-0": "1s"
}

Bytes

Os dados de bytes são codificados como uma string usando a codificação base64 padrão com almofadas. Codificação base64 padrão ou segura para URL com ou sem almofadas é suportada.

Exemplo de bytes

{
"bytes": "YWJjMTIzIT8kKiYoKSctRbLx+"
}

Máscara de Campo

Um FieldMask é uma string que descreve os campos a serem usados ao fazer uma solicitar / pedir. Para construir uma fieldmask, especifique os nomes dos campos JSON delimitados por vírgula em uma string / cadeia / texto. Por exemplo, dado o seguinte recurso:

Exemplo de recurso JSON

{
"foo": {
"a": "c",
"b": "d"
},
"bar": "x",
"baz": "y"
}

Se você quisesse especificar uma máscara de campo para atualizar os valores apenas de foo.b e bar, a máscara de campo ficaria assim: foo.b, bar

No Open Cloud, os métodos de atualização que suportam uma máscara de campo têm um parâmetro chamado updateMask , onde você pode especificar uma máscara de campo como um valor.

Dinheiro

Geralmente usado para definir um preço, o tipo Money tem um código de moeda de três letras (como definido na ISO 4217) e uma quantidade, que usa o digitarDecimal. Por exemplo, um produto da Loja do Criador de $ 17,99 se parece com isso:


"myPrice": {
"currencyCode": "USD",
"quantity": {
"significand": 1799,
"exponent": -2
}
}

Decimal

Representa um número decimal em uma forma semelhante à notação científica, com dígitos significativos e um exponente.

Exemplos:

  • 17 vezes

    {"significand": 17, "exponent": 0} ou apenas {"significand": 17}

  • -0,005

    {"significand": -5, "exponent": -3}

  • 33,5 milhões (33,500,000)

    {"significand": 335, "exponent": 5}

  • 11/8 (1.375)

    {"significand": 1375, "exponent": -3}

Quando exponent é maior que 0, representa o número de zeros após os dígitos significativos. Quando exponent é inferior a 0, representa quantos dos dígitos significativos vêm após o ponto decimal. Quando exponent é 0, o valor do Decimal é o valor do significand .