关于restful:REST-API知识整理

4次阅读

共计 1207 个字符,预计需要花费 4 分钟才能阅读完成。

一、介绍(REST)

REST 即 Representational State Transfer 的缩写,"体现层状态转化"。REST API 是前后端拆散的最佳实际,是开发的一套规范或者说是一套标准,不是框架。益处:

1、轻量,间接通过 http,不须要额定的协定,通常有 post/get/put/deletec 等操作;
2、面向资源,高深莫测,具备自解释性;
3、数据形容简略,个别通过 json 或者 xml 实现数据间的通信。

二、资源(Resources)

REST 的名称 "体现层状态转化" 中,省略了主语。"体现层" 其实指的是 "资源"(Resources)的 "体现层"。所谓 "资源",就是网络上的一个实体,或者说是网络上的一个具体信息。它能够是一段文本、一张图片、一种服务,总之就是一个具体的切实。你能够用一个 URI(对立资源定位符)指向它,每种资源对应一个特定的 URI。要获取这个资源,拜访它的 URI 就能够,因而 URI 就成了每一个资源的地址或举世无双的辨认符。所谓 "上网",就是与互联网上一系列的 "资源" 互动,调用它的 URI。

三、体现层(Representation)

"资源" 是一种信息实体,它能够有多种外在表现形式。"资源" 具体出现进去的模式,叫做它的 "体现层"(Representation)。比方,文本能够用 txt 格局体现,也能够用 HTML 格局、XML 格局、JSON 格局体现,甚至能够采纳二进制格局;图片能够用 JPG 格局体现,也能够用 PNG 格局体现。URI 只代表资源的实体,不代表它的模式。严格地说,有些网址最初的 ".html" 后缀名是不必要的,因为这个后缀名示意格局,属于 "体现层" 领域,而 URI 应该只代表 "资源" 的地位。它的具体表现形式,应该在 HTTP 申请的头信息中用 Accept 和 Content-Type 字段指定,这两个字段才是对 "体现层" 的形容。

四、状态转化(State Transfer)

拜访一个网站,就代表了客户端和服务器的一个互动过程。在这个过程中,势必波及到数据和状态的变动。互联网通信协议 HTTP 协定,是一个无状态协定。这意味着,所有的状态都保留在服务器端。因而,如果客户端想要操作服务器,必须通过某种伎俩,让服务器端产生 "状态转化"(State Transfer)。而这种转化是建设在体现层之上的,所以就是 "体现层状态转化"。客户端用到的伎俩,只能是 HTTP 协定。具体来说,就是 HTTP 协定外面,四个示意操作形式的动词:GET、POST、PUT、DELETE。别离对应四种基本操作:GET 用来获取资源,POST 用来新建资源(也能够用于更新资源),PUT 用来更新资源,DELETE 用来删除资源。

五、综述
综合下面的解释,总结一下什么是 RESTful 架构:
1、每一个 URI 代表一种资源;
2、客户端和服务器之间,存在传递这种资源的某种体现层;
3、客户端通过四个 HTTP 动词,对服务器端资源进行操作,实现 ” 体现层状态转化 ”。

正文完
 0