优点:结构清晰、符合标准、易于理解、扩展方便。
REST 即:Representational State Transfer 的缩写。简单的翻译为:表现层状态转化。
如果一个架构符合REST原则,就称它为RESTful架构。
在REST的名称“表现层状态转化”中,表现层其实指的就是“资源”的“表现层”。所谓资源,就是网络上的一个实体,或者说是网络上个一个具体信息。它可以是一段文本、一张图片、一种服务,总之就是一个具体的存在。你可以用一个URL指向它,每种资源对应一个特定的URL。
资源是一种信息实体,他可以有多种外在的表现形式,把资源具体呈现出来的形式,叫做他的表现层。eg:文本可以用txt、html、json格式表现。
URL只代表资源的实体 ,不代表形式。严格的说网址最后.html后缀名是没有必要的,因为后缀名表示格式,是表现层的范畴,而URL只表示资源位置,它的具体表现形式应该在HTTP请求的头信息中用Accept和ContentType 字段指定,这两个字段才是对“表现层”的描述。
状态转化:
访问一个网站就代表客户端和服务器的一个互动过程,在这个过程中,势必涉及到数据和状态的变化。
互联网通信协议Http协议是一个无状态协议,这意味着所有的状态都在服务器端存储,所以,如果客户端想要操作服务器,必须通过某种手段让服务器发生状态转化,而这种状态转化建立在表现层之上的,所以就是表现层状态转化。客户端用到的手段只能是http协议。具体的说就是http协议里面,四个表示操作方式的动词:put、get、post、delete。get 用来获取资源,post用来新建资源(也用于更新资源),put用来更新资源,delete用来删除资源。
参考链接:
http://www.ruanyifeng.com/blog/2011/09/restful.html