博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring 指南(了解REST)
阅读量:6458 次
发布时间:2019-06-23

本文共 1088 字,大约阅读时间需要 3 分钟。

了解REST

REST(Representational State Transfer)由Roy Fielding于2000年在他的中引入和定义,REST是用于设计分布式系统的架构风格,它不是标准,而是一组约束,例如无状态,具有客户端/服务器关系和统一接口,REST与HTTP并不严格相关,但最常与它相关联。

REST原则

  • 资源公开易于理解的目录结构URI。
  • 表示传输JSON或XML以表示数据对象和属性。
  • 消息显式使用HTTP方法(例如,GETPOSTPUTDELETE)。
  • 无状态交互在请求之间不在服务器上存储客户端上下文,状态依赖性限制和限制可伸缩性,客户端保持会话状态。

HTTP方法

使用HTTP方法将CRUD(创建、检索、更新、删除)操作映射到HTTP请求。

GET

检索信息,GET请求必须是安全且的,这意味着无论使用相同参数重复多少次,结果都是相同的,它们可能有副作用,但用户不期望它们,因此它们对系统的操作不是至关重要的,请求也可以是部分的或有条件的。

检索ID为1的地址:

GET /addresses/1

POST

请求URI上的资源对提供的实体执行某些操作,POST通常用于创建新实体,但也可用于更新实体。

创建一个新地址:

POST /addresses

PUT

将实体存储在URI中,PUT可以创建新实体或更新现有实体,PUT请求是幂等的,幂等性是PUTPOST请求的期望之间的主要区别。

修改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 — 服务器错误

媒体类型

AcceptContent-Type HTTP头可用于描述HTTP请求中发送或请求的内容,如果客户端正在请求JSON格式的响应,则可以将Accept设置为application/json,相反,在发送数据时,将Content-Type设置为application/xml会告诉客户端请求中发送的数据是XML。


转载地址:http://zpizo.baihongyu.com/

你可能感兴趣的文章
TCP三次握手四次挥手相关问题探讨
查看>>
基本分类方法——KNN(K近邻)算法
查看>>
在XenCenter6.2中构建CentOS7虚拟机的启动错误
查看>>
.NET Framework3.0/3.5/4.0/4.5新增功能摘要
查看>>
php中表单提交复选框与下拉列表项
查看>>
熟悉常用的Linux操作
查看>>
WordPress 前端投稿/编辑发表文章插件 DJD Site Post(支持游客和已注册用户)汉化版 免费下载...
查看>>
C# 自定义事件整理项目 - EventDemo
查看>>
几何面积体积_2
查看>>
面象过程与面象对象
查看>>
用CSS实现图片水印效果代码
查看>>
谷歌设置支持webgl
查看>>
P3402 【模板】可持久化并查集
查看>>
js的AJAX请求有关知识总结
查看>>
Eclipse添加新server时无法选择Tomcat7的问题
查看>>
L207
查看>>
nginx 配置https 负载均衡
查看>>
listing_windows形式输出直线结构体的起点、终点信息
查看>>
双拓扑排序 HDOJ 5098 Smart Software Installer
查看>>
三分 POJ 2420 A Star not a Tree?
查看>>