RESTful 接口

本文我们来谈谈,关于 REST 接口。

什么是 RESTful 接口

REST -> Respresentational State Transfer(表述性状态转移)

REST 将资源的状态以适合客户端的形式从服务端发送到客户端(或相反方向)。在 REST 中,通过 URL 进行资源定位,用 HTTP 动作(GET、POST、DELETE、PUT等)描述进行操作,完成功能。

RESTful 表示 REST 的形容词。

RESTful 接口是一种设计风格,用于构建网络应用程序的 API

RESTful 接口 中,每个资源都由唯一的 URL 标识,比使用 HTTP 方法(如GET、POST、PUT、DELETE)对资源进行操作。这些 HTTP 方法对应了服务端执行的操作,例如获取资源、创建资源、更新资源或删除资源。

RESTful 接口 还使用 HTTP 状态码来表示请求的处理结果,例如 200 表示成功、404 表示资源未找到等。RESTful 接口 还支持数据的不同表示格式常用的有 JSONXML

REST 特征

REST 有以下的特征:

  • 客户 - 服务端(client - server) :提供服务的服务器和使用服务的客户端需要被隔离对待
  • 无状态(stateless) :服务器端不存储客户的请求中的信息,客户的每一个请求必须包含服务器处理该请求所需的信息,所有的资源都可以通过 URI 定位,而且这个定位与其他资源无关,也不会因为其他资源的变化而变化。
  • 可缓存(cacheable):服务器必须让客户端知道请求是否可以被缓存。
  • 分层系统(layered System):服务器和客户端之间的通信必须被标准化。
  • 统一接口(uniform interface) :客户端和服务器之间的通信方法必须统一,RESTful 风格的数据元操作 CRUD(Create、Read、Update、Delete) 分别对应 HTTP 方法 - Post 创建新资源,Get 获取资源,Put 更新资源和 Delete 删除资源,这样就能统一数据操作的接口。
  • HTTP 状态码 :状态码在 REST 中都有特定的意义,比如 401 表示用户身份认证失败。
  • 支持按需代码(Code-On-Demand,可选):服务器可以提供一些代码或脚本,并在客户的运行环境中执行。

相关案例会在后面的文章中进行补充~

参考

相关推荐
晴栀ay6 小时前
JS中原型式面向对象的精髓
前端·javascript
南雨北斗6 小时前
mysql视图的作用
后端
美幻6 小时前
前端复制功能在移动端失效?一文彻底搞懂 Clipboard API 的兼容性陷阱
前端
llxxyy卢6 小时前
XSS跨站之订单及shell箱子反杀记
前端·xss
Seven976 小时前
剑指offer-42、和为S的两个数字
java
Pa2sw0rd丶6 小时前
Fastjson 反序列化漏洞深度解析:从原理到实战防护
java·后端·安全
带刺的坐椅6 小时前
AspectJ、Spring AOP 与 Solon AOP:Java AOP 框架的三剑客
java·spring·solon·aop·aspectj
q***64976 小时前
SpringSecurity踢出指定用户
android·前端·后端
Coding_Doggy6 小时前
链盾shieldchiain | 团队功能、邀请成员、权限修改、移除成员、SpringSecurity、RBAC权限控制
java·开发语言·数据库
q***76666 小时前
SpringSecurity 实现token 认证
android·前端·后端