RESTful 架构
起源
REST(Representational State Transfer,表现层状态转换)是 Roy Thomas Fielding 博士于 2000 年在他的博士论文 Architectural Styles and the Design of Network-based Software Architectures 中提出。
理解
直译版本
Representation:表现
State:状态
Transfer:转换
将上述三者连起来:表现层的状态转换,是不是有点拗口,毕竟 缺少个主语
。那么,继续读下文就可以了。
意译版本
Resources:资源
Representation:表现
State:状态
Transfer:转换
将缺少的主语 Resources(资源)
补充上连起来再读,资源表现层的状态转换。是不是比之前读起来舒服多了。再将各个单词解释下:
- Resources:资源。网络上传输的各项数据,比如文本,图片。
- Representation:表现。资源有多种表现形式,比如文本可以有 txt 格式、XML 格式;图片有 jpg 格式。
- State Transfer:状态转换。对保存在服务器端的资源及其状态利用 HTTP 方法 进行修改,比如 GET、POST、DELETE、PUT。
强调下:是资源在网络传输中进行的表现形式的转换。
好处
- 通过看 RESTful API 你可以看到 URI+HTTP Method,即「要什么+做什么」;
- 通过看 HTTP Status Code 你就可以知道结果如何。
技巧
- 使用
_
或-
来让 URI 可读性更好,推荐使用-
; - 使用
/
来表示资源的层级关系; - 使用
?
来过滤资源; ,
或;
可以用来表示同级资源的关系。
误区
- URI 包含动词;
- URI 中有版本号。
推荐阅读
“一把梭:REST API 全用 POST” (强烈推荐)
RESTful 架构详解
理解RESTful架构
面向资源编程-RESTful风格
RESTful API Design. Best Practices in a Nutshell.
[译] RESTful API 设计最佳实践
WEB开发中,使用JSON-RPC好,还是RESTful API好
还没有评论,来说两句吧...