在数据键 API Blueprint / Apiary 中包装数据结构
Wrapping Data Structure in a data key API Blueprint / Apiary
假设我有一个 200
响应,正文应该是:
{
"data": [
{
"id": 1,
"title": "Activity 1"
},
{
"id": 1,
"title": "Activity 2"
}
]
}
我已经通过在 API 蓝图中使用它来获得响应主体的这种行为。
+ Response 200 (application/json)
+ Attributes
+ data (array[Activity])
(请注意,我不能将数据键添加到数据结构本身,因为它只存在于单个响应中。如果我需要将 Activity 嵌套在另一个结构中,它不应该有数据密钥。)
这好像不对
我认为这不是正确的做法的原因是因为此响应的 JSON 架构是:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}
请注意如何排除实际的 activity。
如何将我的响应正确地包装在数据键中,并使其同时反映在正文和模式中?
你应该使用这一行:
+ data(array[Activity], fixed-type)
fixed-type
关键字确定数组中项目的类型。
假设我有一个 200
响应,正文应该是:
{
"data": [
{
"id": 1,
"title": "Activity 1"
},
{
"id": 1,
"title": "Activity 2"
}
]
}
我已经通过在 API 蓝图中使用它来获得响应主体的这种行为。
+ Response 200 (application/json)
+ Attributes
+ data (array[Activity])
(请注意,我不能将数据键添加到数据结构本身,因为它只存在于单个响应中。如果我需要将 Activity 嵌套在另一个结构中,它不应该有数据密钥。)
这好像不对
我认为这不是正确的做法的原因是因为此响应的 JSON 架构是:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}
请注意如何排除实际的 activity。
如何将我的响应正确地包装在数据键中,并使其同时反映在正文和模式中?
你应该使用这一行:
+ data(array[Activity], fixed-type)
fixed-type
关键字确定数组中项目的类型。