浅谈 REST 和 RESTFul API

RESTFul API的特色:前端

  1. 基于“资源”,数据也好、服务也好,在RESTFul设计里一切都是资源。
  2. 无状态。一次调用通常就会返回结果,全部的资源,均可以经过URI定位
  3. URL中一般不出现动词,只有名词
  4. URL语义清晰、明确
  5. 使用HTTP的GET、POST、DELETE、PUT来表示对于资源的增删改查
  6. 使用JSON不使用XMLspa

RESTFul API的一些最佳实践原则:设计

  1. 使用HTTP动词表示增删改查资源, GET:查询,POST:新增,PUT:更新,DELETE:删除
  2. 返回结果必须使用JSON
  3. HTTP状态码,在REST中都有特定的意义:200,201,202,204,400,401,403,500。好比401表示用户身份认证失败,403表示你验证身份经过了,但这个资源你不能操做。
  4. API必须有版本的概念,v1,v2,v3
  5. 使用Token令牌来作用户身份的校验与权限分级,而不是Cookie。
  6. 使用 - 而不是使用 _ 作URL路径中字符串链接。

REST 是基于HTTP,面向资源的,而资源是经过 URI 进行暴露。code

优势:对uri进行了限制,只用于定义资源;规范统一,使得API适用于各类各样的前端设备;使用了版本号(V1),更加规范
接口

缺点:API接口返回的数据一般是完整的数据模型,对客户端不是很友好,可能只须要某几个字段资源

相关文章
相关标签/搜索