RESTFul API的特色:前端
- 基于“资源”,数据也好、服务也好,在RESTFul设计里一切都是资源。
- 无状态。一次调用通常就会返回结果,全部的资源,均可以经过URI定位
- URL中一般不出现动词,只有名词
- URL语义清晰、明确
- 使用HTTP的GET、POST、DELETE、PUT来表示对于资源的增删改查
-
使用JSON不使用XMLspa
RESTFul API的一些最佳实践原则:设计
- 使用HTTP动词表示增删改查资源, GET:查询,POST:新增,PUT:更新,DELETE:删除
- 返回结果必须使用JSON
- HTTP状态码,在REST中都有特定的意义:200,201,202,204,400,401,403,500。好比401表示用户身份认证失败,403表示你验证身份经过了,但这个资源你不能操做。
- API必须有版本的概念,v1,v2,v3
- 使用Token令牌来作用户身份的校验与权限分级,而不是Cookie。
- 使用 - 而不是使用 _ 作URL路径中字符串链接。
REST 是基于HTTP,面向资源的,而资源是经过 URI 进行暴露。
code
优势:对uri进行了限制,只用于定义资源;规范统一,使得API适用于各类各样的前端设备;使用了版本号(V1),更加规范
接口
缺点:API接口返回的数据一般是完整的数据模型,对客户端不是很友好,可能只须要某几个字段资源