什么是 REST
发布时间:2023-07-01 15:01:05 所属栏目:教程 来源:
导读:REST 全称是 Representational State Transfer 的缩写,中文翻译是表述性状态转移。Roy Thomas Fielding 首次在他的博士论文中提出的 REST 这个概念,他把互联网软件的架构原则,定名为 REST。
Roy Thomas Fieldi
Roy Thomas Fieldi
REST 全称是 Representational State Transfer 的缩写,中文翻译是表述性状态转移。Roy Thomas Fielding 首次在他的博士论文中提出的 REST 这个概念,他把互联网软件的架构原则,定名为 REST。 Roy Thomas Fielding 提出 REST 的概念,是为了得到一个以网络为基础的应用软件的架构,得到一个功能强、性能好、适宜通信的架构。REST 指的是一组架构约束条件和原则,如果一个架构符合 REST 的约束条件和原则,我们就称它为 RESTful 架构。 虽然 REST 本身受 Web 技术的影响很深,但理论上,REST 架构风格并不是绑定在 HTTP 应用上。目前 HTTP 是唯一与 REST 相关的应用领域,因此 REST 通常是指基于 HTTP 实现的 REST。 1. 理解 REST REST 是 Representational State Transfer 的缩写,通过理解这个词组中每个单词的含义,去理解 REST。 1.1 资源 Resource REST 的名称 “表述性状态转移” 中,省略了主语。REST 的全称应该是 “资源表述性状态转移”。 对每一种资源,可以进行增加、修改、删除的操作,在这个例子中,即为增加主题、修改主题、删除主题。 1.2 表述性 Represtation 资源是一种信息实体,在外界的具体呈现,可以有多种表述(或成为表现、表示)形式,在客户端和服务端之间传送的也是资源的表述,而不是资源本身。例如,文本资源可以采用 HTML、XML、JSON 等格式表现,图片资源可以使用 PNG 或 JPG 等等格式表现。 在 HTTP 协议中,客户端可以通过 Accept 消息头请求一种特定格式的表述,服务端则通过 Content-Type 告诉客户端资源的表述形式。 1.3 状态转移 State Transfrer 在客户端和服务器的的互动过程,客户端需要通过某种手段让服务器端发生 “状态转移”(State Transfer)。例如,在论坛中,论坛当前包含的主题以及相应的回复,即为服务端的状态,增加、修改、删除主题或者回复,都会引起 “状态转移”。 根据 HTTP 标准,有 4 个 HTTP 请求方法,可以用于服务端的 “状态转移”: 请求方法 功能 GET 获取资源 POST 新建资源 PUT 更新资源 DELETE 删除资源 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |