restful api的输出结构是什么?

时间:2014-09-07 11:50:23

标签: api rest restful-architecture

什么是推荐的和最好的RESTful API结果结构。那就是我现在正在做的事情:

 GET  /api/v1/users

 {
        status: "success",
        result: [{...}, ...]
 }

2 个答案:

答案 0 :(得分:1)

我会采用不同的方法(尽管你的方法没有错,但我觉得不太常见):

让状态成为HTTP标头的一部分,带有HTTP返回码(200,201,...,400,404,......等),在您提到的情况下,使用JSON数组而不是结果字段:[{...},...]

一个简单的例子:

请求:

GET /api/v1/users HTTP/1.1

响应:

200 OK
Content-Type: application/json
Date: Sun, 07 Sep 2014 15:24:04 GMT
Content-Length: 261
....

[
    {
        "username": ..., 
        "email": ...,
        "firstName": ...,
        "lastName": ...,
        "password": ...,
        ...
    },
    {
        "username": ..., 
        "email": ...,
        "firstName": ...,
        "lastName": ...,
        "password": ...,
        ...
    }
]

答案 1 :(得分:1)

有许多JSON超媒体格式,例如:

Pick one!

您的status: "success",与统一界面/自我描述性消息REST约束无关。您应该使用HTTP标准而不是创建自己的标准。有关REST的更多详细信息:Representational state transfer (REST) and Simple Object Access Protocol (SOAP)