RESTFUL设计风格

  1. URL地址尽量使用名词复数,不要使用动词。

  2. 访问同一个URL地址,采用不同的请求方式,代表要执行不同的操作。(GET, POST, PUT, DELETE)

  3. 过滤参数可以放在查询字符串中.(?limit=10:指定返回记录的数量)

  4. 针对不同操作,服务器向用户返回不同的响应数据。
    1. 获取一组数据,返回一组数据
    2. 获取指定数据,返回指定数据
    3. 新增数据,返回新增的数据
    4. 修改数据,返回修改的数据
    5. 删除数据,返回空
  5. 服务器返回的响应数据格式,应该尽量使用JSON。

  6. 响应状态码
OK - [GET/PUT]:服务器成功返回用户请求的数据
CREATED - [POST]:用户新建数据成功。
NO CONTENT - [DELETE]:用户删除数据成功。
INVALID REQUEST - [POST/PUT]:用户发出的请求有错误,服务器没有进行新建或修改数据的操作
NOT FOUND - [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作,该操作是幂等的。。
INTERNAL SERVER ERROR - [*]:服务器发生错误,用户将无法判断发出的请求是否成功。

Restful风格设计-其他

  1. 应该尽量将API部署在专用域名之下。

  2. 应该将API的版本号放入URL

  3. 错误处理:如果状态码是4xx,服务器就应该向用户返回出错信息。

  4. 超媒体:RESTful API最好做到Hypermedia(即返回结果中提供链接,指向其他API方法),使得用户不查文档,也知道下一步应该做什么。

相关推荐