类型和格式摘要
参数和架构中的 type
和 format
属性可用于确定属性的数据类型。type
属性在 JSON 请求和响应中发送时,用于指明属性的类型(JSON 支持一小部分数据类型,详情请参阅 json.org)。format
属性提供有关基础类型的其他信息。属性始终具有 type
属性,但某些属性可能还有 format
属性。
例如,64 位整数无法以 JSON 表示(因为 JavaScript 和 JSON 最多支持 2^53 的整数)。因此,64 位整数必须以 JSON 请求/响应中的字符串表示。因此,type
属性会被设为“string”,但 format
属性会被设为“int64”,以表明它是一个 64 位整数。
JSON 架构规范已为 format
属性定义了一组常用值。Google API Discovery Service 支持其中一些值,还定义了其他值。下面总结了 Google API Discovery Service 支持的 type
和 format
值的完整列表。
类型值 | 格式值 | 含义 |
---|---|---|
any |
|
属性可以是任何类型。由 JSON 架构规范定义。 |
array |
|
一个 JavaScript 值数组。items 属性指示数组值的架构。由 JSON 架构规范定义。 |
boolean |
|
布尔值,可以是“true”或“false”。由 JSON 架构规范定义。 |
integer |
int32 |
32 位有符号整数。其最小值为 -2,147,483,648,最大值为 2,147,483,647(含)。 |
integer |
uint32 |
32 位无符号整数。其最小值为 0,最大值为 4294967295(含)。 |
number |
double |
双精度 64 位 IEEE 754 浮点。 |
number |
float |
单精度 32 位 IEEE 754 浮点。 |
object |
|
JavaScript 对象。由 JSON 架构规范定义。 |
string |
|
任意字符串。由 JSON 架构规范定义。 |
string |
byte |
填充的 base64 编码字符串,使用网址和文件名安全字母表(有时称为“web-safe”或“base64url”)进行编码。由 RFC4648 定义。 |
string |
date |
采用 YYYY-MM-DD 格式的 RFC3339 日期。在 JSON 架构规范中定义。 |
string |
date-time |
世界协调时间 (UTC) 的 RFC3339 时间戳。格式为 yyyy-MM-ddTHH:mm:ss.SSSZ。毫秒部分(“.SSS”为可选项)。在 JSON 架构规范中定义。 |
string |
google-datetime |
世界协调时间 (UTC) 的 RFC3339 时间戳。格式为 yyyy-MM-ddTHH:mm:ss.SSSZ。毫秒部分(“.SSS”为可选项)。 |
string |
google-duration |
字符串以后缀“s”(表示秒)结束,后跟秒数,以纳秒为单位表示。句点始终用作小数点,而非英文逗号。 |
string |
google-fieldmask |
一个用英文逗号分隔字段名称的字符串。字段名称以较低的驼峰式命名规范表示。 |
string |
int64 |
64 位有符号整数。最小值为 -9223372036854775808,最大值为 9223372036854775807(含)。 |
string |
uint64 |
64 位无符号整数。其最小值为 0,最大值为 (2^64)-1(含)。 |