参数和架构的 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,最大值为 4,294,967,295(含)。 |
number |
double |
双精度 64 位 IEEE 754 浮点。 |
number |
float |
单精度 32 位 IEEE 754 浮点。 |
object |
|
JavaScript 对象。由 JSON 架构规范定义。 |
string |
|
任意字符串。由 JSON 架构规范定义。 |
string |
byte |
填充的 base64 编码字节字符串,使用网址和文件名安全字母表(有时称为“网络安全”或“base64url”)进行编码。由 RFC4648 定义。 |
string |
date |
RFC3339 日期,格式为 YYYY-MM-DD。在 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 位带符号整数。其最小值为 -9,223,372,036,854,775,808,最大值为 9,223,372,036,854,775,807(含)。 |
string |
uint64 |
64 位无符号整数。其最小值为 0,最大值为 (2^64)-1(含)。 |