restful 响应是否应该包含或排除空结果?
Shall restful response include or exclude empty result?
这里是一个api,使用一批用户id来获取用户
GET /user/{user_id}
user_id : 逗号分隔的字符串
例如 http://user.example.com/user/1,2,3
现在我的 id 1 和 2 有 2 个用户,但 id 3 没有用户。
响应应该包括空用户还是排除?
包括示例:
{
"id":"1",
"name":"Chris",
"age":29
},
{
"id":"2",
"name":"Max",
"age":30
},
{
"id":"3"
}
排除示例:
{
"id":"1",
"name":"Chris",
"age":29
},
{
"id":"2",
"name":"Max",
"age":30
}
如果不存在具有给定标识符的资源,则不得将其包含在响应中。
如果您有一组用户,请尝试使用 复数名词 (/users
而不是 /user
)来识别它并使用查询字符串过滤它的参数,例如/users?ids=1,2,3
.
当使用JSON表示一个集合时,使用一个数组(以[
开始,以]
结束并分隔,
).
的值
有关请求集合表示或单个资源表示时应使用的状态代码的更多详细信息,请参阅此 。
这里是一个api,使用一批用户id来获取用户
GET /user/{user_id}
user_id : 逗号分隔的字符串
例如 http://user.example.com/user/1,2,3
现在我的 id 1 和 2 有 2 个用户,但 id 3 没有用户。
响应应该包括空用户还是排除?
包括示例:
{
"id":"1",
"name":"Chris",
"age":29
},
{
"id":"2",
"name":"Max",
"age":30
},
{
"id":"3"
}
排除示例:
{
"id":"1",
"name":"Chris",
"age":29
},
{
"id":"2",
"name":"Max",
"age":30
}
如果不存在具有给定标识符的资源,则不得将其包含在响应中。
如果您有一组用户,请尝试使用 复数名词 (/users
而不是 /user
)来识别它并使用查询字符串过滤它的参数,例如/users?ids=1,2,3
.
当使用JSON表示一个集合时,使用一个数组(以[
开始,以]
结束并分隔,
).
有关请求集合表示或单个资源表示时应使用的状态代码的更多详细信息,请参阅此