RESTful简述

Creative Commons
本作品采用知识共享署名

本文简要说明RESTFul概念

概述

Restful是什么
REST的全称是Representational State Transfer,网上翻译为是“表现层状态转化”,“表述性状态转移”等。Restful是一种流行的互联网软件架构,是一组约束条件和规则。
Restful不是什么
Restful不是标准,没有标准的规范。
Restful有什么用
定义了一组规则规定述客户端如何操作服务器资源,并“表现”

资源

Representational State Transfer的对象是资源,要表现的对象是“资源”,资源在网络上就是可以被引用的实体,例如:

表现形式(Representation)

资源携带一组信息或者提供一些服务,对于相同的信息或者服务可以有很多种表现形式(Representational),例如一段音频,可以是文本可以用txt格式表现,也可以用HTML格式、XML格式、JSON格式表现,甚至可以采用二进制格式;图片可以用JPG格式表现,也可以用PNG格式表现。

状态转移(State Transfer)

当客户端和服务器发生交互时有状态变化(State Transfer),CS结构下状态转移由客户端发起,但客户端不能保存状态, 所有的状态都保存在服务器端。

客户端接口

  • GET(SELECT):从服务器取出资源(一项或多项)。
  • POST(CREATE):在服务器新建一个资源。
  • PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。
  • PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。
  • DELETE(DELETE):从服务器删除资源。

参考

http://www.ruanyifeng.com/blog/2011/09/restful
http://www.runoob.com/w3cnote/restful-architecture.html
http://www.ruanyifeng.com/blog/2014/05/restful_api.html
http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm