REST是一种设计风格,不是一种标准。
可以理解为“表现层状态转化”。
RESTful架构:
1) 每一个URI代表一种资源
2) 传递资源的处于客户端和服务器之间的某种表现层
3) 通过HTTP动词(GET,POST,PUT,DELETE)对服务器资源进行操作
RESTful架构指南:
1) API与用户的通信协议必定是HTTPs协议
2) API应该部署在专用域名下(简单的API可以部署在主域名下), https://主域名/api
3) API的版本号应放入URL或HTTP头信息中
4) 路径(API的具体网址)不能有动词,名词应为复数
5) 四个HTTP动词:GET, POST, PUT, DELETE
a.由于POST不具备幂等性,一般用作新建资源
b.针对浏览器表单,PUT和DELETE方法不可用, 需配置HiddenHttpMethodFilter的内置过滤器类.
该类对http请求的标准化,可以自己声明请求的方式,传递参数_method:PUT(HTTP动词)
6) 过滤信息:API提供过滤参数,所以API路径和URL参数允许重复
例:GET/zoo/ID/animals 等同于 GET/animals?zoo_id=ID
参考文献: http://www.ruanyifeng.com/blog/2014/05/restful_api.html