参考:什么是REST编程:http://www.ruanyifeng.com/blog/2011/09/restful.html
一、REST是Representational State Transfer的缩写,翻译是"表现层状态转化"。
二、什么是资源、表现层、以及转化
1、资源:所谓"资源",就是网络上的一个实体,或者说是网络上的一个具体信息。
2、表现层:我们把"资源"具体呈现出来的形式,叫做它的"表现层"(Representation)。
3、转化:如果客户端想要操作服务器,必须通过某种手段,让服务器端发生"状态转化"(State Transfer)。而这种转化是建立在表现层之上的,所以就是"表现层状态转化"。
客户端用到的手段,只能是HTTP协议。具体来说,就是HTTP协议里面,四个表示操作方式的动词:GET、POST、PUT、DELETE。它们分别对应四种基本操作:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源。
三、综合上面的解释,我们总结一下什么是RESTful架构:
(1)每一个URI代表一种资源;
(2)客户端和服务器之间,传递这种资源的某种表现层;
(3)客户端通过四个HTTP动词,对服务器端资源进行操作,实现"表现层状态转化"。
四、误区:最常见的一种设计错误,就是URI包含动词。