Open Cloud 代表请求和响应的 JSON 作为 标准 JSON 。标准 JSON 类型包括文本、值、对象、阵列、数字和字符串。一些类型有特殊需求来表示特定类型的数据,这些信息在下面的部分中描述。
时戳
使用 RFC 3339,生成的输出总是会是 Z 正常化,使用 0、3、6 或 9 分数位。除 “Z” 外,也可以使用其他值。
示例时戳
{ "timestamp": "1972-01-01T10:00:20.021Z" }
持续时间
生成的输出总是包含 0、3、6 或 9 个小数位,根据所需精度,然后以“s” 结尾。 允许任何小数位 (也不是任何) ,只要它们能够在纳秒级精度和“s” 结尾。 范围必须从 -315,576,000,000 到 315,576,000,000 秒。
示例持续时间
{
"duration-9": "1.000340012s",
"duration-0": "1s"
}
字节
字节数据以字符串的形式用 standard base64 编码与空格。支持使用标准或 URL 安全的 base64 编码或不带空格。
示例 Bytes
{
"bytes": "YWJjMTIzIT8kKiYoKSctRbLx+"
}
字段面具
FieldMask是描述请求时要处理的字段的串。要构建FieldMask,您将 JSON 字段名称分开放在字符串中。例如,给出以下资源:
示例 JSON 资源
{
"foo": {
"a": "c",
"b": "d"
},
"bar": "x",
"baz": "y"
}
如果您想要指定一个字段面具来更新仅 foo.b 和 bar 的值,字段面具将看起来像: foo.b, bar
在 Open Cloud 中,更新支持字段面具的方法有一个参数名为 updateMask,在该参数中,您可以指定字段面具为值。
钱
一般用于定义价格,而 Money 类型具有三个字母货币代码(按照 ISO 4217 的定义)和一个数量,这使用 Decimal 输入。例如,一个 $17.99 的创作者商店产品看起来会像这样:
"myPrice": {
"currencyCode": "USD",
"quantity": {
"significand": 1799,
"exponent": -2
}
}
十六进制
представляет一个十六进制数字,与科学记号有形,包括大量大数和一个乘数。
例子:
17
{"significand": 17, "exponent": 0} 或只是 {"significand": 17}
0.005
{"significand": -5, "exponent": -3}
33.5 百万 (33,500,000)
{"significand": 335, "exponent": 5} number5 号标志
11/8 (1.375)
{"significand": 1375, "exponent": -3}
当 exponent 大于 0 时,它代表大位数后的零数。当 exponent 小于 0 时,它代表大位数后的几个小位数。当 exponent 为 0 时,1> Decimal1> 的值是 4> significand4>