×

深圳网站建设—APP开发—网站制作—小程序开发_博纳网络公司

0755 -
82538016
82560826
网站制作资讯

网站建设关于使用REST架构的方法简析

文章编辑:网站建设 文章来源:深圳网站建设专栏 浏览量:

  网站建设关于使用REST架构的方法简析,深圳网站建设公司提醒REST (Representational State Transfer,具象状态转移)是一种用于Web程序设计的架构风格。REST是Roy Thomas Fielding在他的博士论文Architectural Styles and the Design of Network-based SoftwareArchitectures(架构风格和基于网络的软件架构设计)中首先提出的。REST定义了指导现代Web程序接口设计与开发的一系列约束。
  
  REST的拗口的名字暗示了它的设计思想是以状态转移为核心的。REST把网页看成一个虚拟状态机 (Virtual State-machine),用户通过选择不同的链接执行不同的操作,从而引发状态转换,将下一个页面呈现给用户,以便用户在使用程序时能明确感受到状态的变化,并通过状态变化的逻辑引导用户进行下一步操作。
这和许多程序员认为的REST就是一个接口的编写规范不同,REST强调的是如何把应用程序的状态变化和网页的链接有效地无缝融合,而不仅仅是约定应用程序的接口使用POST或GET编写。接口的约束仅仅是REST约束中的一部分。在REST中,具象状态转移就是指资源状态的变化,REST关注的是资源
(Resource)的具象。所谓“资源”,代表一个网络上的实体,它可以是一段文本、一张图片或者一个对象,并且可以通过统一资源定位符(Uniform Resourceldentifier,URI)指向它。要获取这个资源,直接通过URl访问即可,因此URl就成了每一个资源地址独一无二的识别符。
  对于网站建设的应用程序来说,资源不仅是一段文本或一张图片,它是一个个对象,是用于解决领域问题的对象。所谓具象状态就是这些对象的状态。对于和网络结合的Web应用程序来说,这些对象也作为资源向用户呈现,只是呈现的是对象状态的快照,也就是对象的具象。同样,用户通过HTTP的不同请求方法(POST、PUT和DELETE)也会引发对象状态的改变,也就是具象状态的转移。
  和其他网站建设架构风格一样,REST也是由一系列约束组成。其中最主要的约束是统一接口(Uniform Interface)的约束,即组件之间要使用一个统一的接口,这个统一的接口一般用HTTP的4个方法(GET、POST、PUT和DELETE)。统一接口约束下还有4个子约束,这4个子约束共同决定REST架构风格的核心特征。具体说明如下:
·资源的识别(Identification of Resources) :每个资源都有各自的标识符。客户端在请求时需要指定该标识符。客户端获取的是资源的具象或者说状态,这些状态使用HTML、XML或JSON等格式描述。
·通过表述操作资源(Manipulation of Resources Through Representations):客户端操作的是资源的表述,而不是资源本身。这些表述可以是资源状态的获取,或者是对资源状态的修改。
·自描述消息 (Self-descriptive Messages) :每条消息都包含足够的信息来描述如何处理该消息,也就是包含对状态转移的链接(URI)。
·超媒体作为应用状态引擎(Hypermedia As The Engine Of Application State,HATEOAS) :客户端通过服务器提供的超媒体内容来了解如何操作表述,通过超媒体中的链接,就能引导用户进行下一步操作。
对于REST架构模式来说,经常发生的误解是使用HTTP方法对资源实现CURD(增、删、改、查)操作的封装。两者在形式上确实很相似。REST的核心概念在于“超媒体作为应用状态引擎”,而不仅仅是实现对资源的CURD。
超媒体在本质上与常用的超文本(Hypertext)是一致的,是指一种采用非线性网状结构对块状多媒体信息(包括文本、图像、视频等)进行组织和管理的技术。HATEOAS约束要求在超媒体中必须包含对资源操作的描述及链接。通过这些指向资源的超媒体和链接就支撑了能够映射应用程序状态的虚拟状态机。下面是一个购物商城中请求商品详情的返回信息的例子。
"id”: 1,
"body":
--- i 主描述商品的详细信息、"links" :[
{
"re1" : "se1f",
"href": http : / i xxx / commodityl {id,"method": "GET"
},
"re1" : " commodity list",
"href" : http : i i xxx l commoditysi"method""GET
}
{
"re1" : "add to cart",
"href" : http :ii xxx l cart/?id= {id}"method"PUT"
}
.....
   ]
}
好了,深圳网站建设公司本文关于“网站建设关于使用REST架构的方法简析”的建站知识就分享到这里,谢谢关注,博纳网络编辑整理。

当前文章链接:/construction/solution/14655.html
如果您觉得案例还不错请帮忙分享:

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。

相关案例推荐