什么是REST

111 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第17天,点击查看活动详情

上次我们从定义出发了解了REST ,本次我们将继续深入学习REST。

REST架构的软件设计遵循如下设计准则

• 网络上的所有事物都被抽象为资源(resource)。

• 每个资源对应一个唯一的资源标识符(resource identifier)。

• 通过通用的连接器接口(generic connector interface)对资源进行操作。

• 对资源的各种操作不会改变资源标识符。

• 所有的操作都是无状态的(stateless)。

REST架构遵循了CRUD原则,CRUD原则对于资源只需要四种行为就可以完成对其操作和处理:Create(创建)、Read(读取)、Update(更新)和Delete(删除)。这四个操作是一种原子操作,即一种无法再分的操作,通过它们可以构造复杂的操作过程,正如数学中四则运算是数字的最基本的运算一样。

REST架构让人们真正理解HTTP网络协议的本来面貌,获取、创建、修改和删除资源的操作正好对应HTTP协议提供的GET、POST、PUT和DELETE方法,因此REST把HTTP对一个URL资源的操作限制在GET、POST、PUT和DELETE这四个之内。这种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。

基于上次对REST的介绍,我们了解到,REST它不是一种协议,也不是一种标准,而是指一种软件架构风格。REST架构的软件由服务器端和客户端两部分组成,服务器上的所有信息都被视为资源,每个资源都对应一个唯一的URL标识,对资源的操作又可归结为Create(创建)、Read(读取)、Update(更新)和Delete(删除)四种操作处理。资源具有不同的表现形式和状态,当客户端执行读取操作时,资源的状态信息以合适的形式发送到客户端,当客户端执行更新操作时,资源的状态又被转移到服务器端,因此整个软件的运行过程可以视为资源的表示状态在服务器和客户端间转移,因此这种架构被形象地称为REST

以上内容就是关于REST的所有内容,我们从REST的定义,准则较为全面的的认识学习了REST这种架构。