您的位置:首页 > 运维架构 > 网站架构

Restful架构

2015-11-26 11:33 375 查看
REST即“Representational State Transfer”的缩写,“表现层状态转化”,如果一个架构符合REST原则,那他就是RESTFull架构。要理解RESTFull架构,最好的方法就是理解“Representational State Transfer”,它每个词代表什么含义。如果把这个名称搞懂了,也就不难理解REST的含义了。

(一)资源

REST的“表现层状态转化”中省略了主语,表现层其实指的是资源的表现层,所谓资源,就是网络上的一个实体,或者说网络上的一个具体信息,你可以用一个URI指向他,每个资源对应一个特定的URI,要获取一个资源,访问他的URI就可以了。所谓上网,就是网上一系列的资源互动,访问他的URI。

(二)表现层(Representation)

资源是一种实体信息,他可以有多种表现形式,我们把资源具体呈现出来的形式,叫做他的表现层。比如,文本文件可以以txt格式表现,也可以是HTML、XML甚至二进制形式表现。URI只代表资源的实体,不代表他的表现。严格来说,有些网站最后的.HTML是不必要的,因为这个后缀名表示格式,属于表现层范畴,而RUI应该只代表资源的位置。他的具体表现形式应该在HTTP请求的头信息中用accept和content-type中指定,这两个字段才是对表现层的描述。

(三)状态转化

访问一个网站,就代表了一个客户端和服务器的一个互动过程,在这个过程中,势必涉及到数据和状态的变化。HTTP协议是一个无状态协议,这意味着所有状态都保存在服务器,因此,如果客户端想要操作服务器,必须通过某种手段,让服务器方式状态转化,而这种转化是建立在表现层上的,因此称之为“表现层状态转化”。

客户端使用的手段,只能是HTTP协议,具体来说,就是HTTP协议里面,四个表示操作方式的动词,GET、POST、PUT、DELETE,他们分别对应四中基本操作,GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源。

综述:

综合上面所述,总结一下什么事RESTFull架构

(1)每个URI代表一种资源

(2)客户端和服务器之间传递这种资源的表现层

(3)客户端通过四个HTTP动词,对服务器端资源进行操作,实现“表现层状态转化”


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: