内容简介:REST(Representational State Transfer)由Roy Fielding于2000年在他的使用HTTP方法将CRUD(创建、检索、更新、删除)操作映射到HTTP请求。检索信息,
了解REST
REST(Representational State Transfer)由Roy Fielding于2000年在他的 博士论文 中引入和定义,REST是用于设计分布式系统的架构风格,它不是标准,而是一组约束,例如无状态,具有客户端/服务器关系和统一接口,REST与HTTP并不严格相关,但最常与它相关联。
REST原则
- 资源 公开易于理解的目录结构URI。
- 表示 传输JSON或XML以表示数据对象和属性。
-
消息
显式使用HTTP方法(例如,
GET
、POST
、PUT
和DELETE
)。 - 无状态 交互在请求之间不在服务器上存储客户端上下文,状态依赖性限制和限制可伸缩性,客户端保持会话状态。
HTTP方法
使用HTTP方法将CRUD(创建、检索、更新、删除)操作映射到HTTP请求。
GET
检索信息, GET
请求必须是安全且 幂等
的,这意味着无论使用相同参数重复多少次,结果都是相同的,它们可能有副作用,但用户不期望它们,因此它们对系统的操作不是至关重要的,请求也可以是部分的或有条件的。
检索ID为1的地址:
GET /addresses/1
POST
请求URI上的资源对提供的实体执行某些操作, POST
通常用于创建新实体,但也可用于更新实体。
创建一个新地址:
POST /addresses
PUT
将实体存储在URI中, PUT
可以创建新实体或更新现有实体, PUT
请求是幂等的,幂等性是 PUT
与 POST
请求的期望之间的主要区别。
修改ID为1的地址:
PUT /addresses/1
注意:PUT替换现有实体,如果仅提供数据元素的子集,则其余数据元素将替换为空或 null
。
PATCH
仅更新URI上实体的指定字段, PATCH
请求既不安全也不是幂等(RFC 5789),这是因为 PATCH
操作无法确保整个资源已更新。
PATCH /addresses/1
DELETE
请求删除资源,但是,不必立即删除资源,它可能是异步或长时间运行的请求。
删除ID为1的地址:
DELETE /addresses/1
HTTP状态码
状态码表明HTTP请求的结果。
1XX 2XX 3XX 4XX 5XX
媒体类型
Accept
和 Content-Type
HTTP头可用于描述HTTP请求中发送或请求的内容,如果客户端正在请求JSON格式的响应,则可以将 Accept
设置为 application/json
,相反,在发送数据时,将 Content-Type
设置为 application/xml
会告诉客户端请求中发送的数据是XML。
以上所述就是小编给大家介绍的《Spring 指南(了解REST)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Spring 指南(了解视图模板)
- Spring 指南(了解Git)
- 帮助您了解和创建ReactJS应用的快速指南
- AI 从业者必须了解的决策树指南
- 倒计时 3 天 | 2018 源创会年终盛典参会指南了解一下
- 你了解HTTPS,但你可能不了解X.509
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。