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 接口 还支持数据的不同表示格式常用的有 JSON 和 XML。

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,可选):服务器可以提供一些代码或脚本,并在客户的运行环境中执行。

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

参考

相关推荐
码事漫谈5 分钟前
我花了一周时间,看AI公司怎么"管"AI,结果越看越后背发凉
后端
Penge66624 分钟前
JavaScript:BOM 详解
前端
Penge6661 小时前
Vite vs Webpack:前端构建工具原理与实战
前端
Penge6661 小时前
前端包管理工具:npm、Yarn、pnpm 快速入门
前端
Penge6661 小时前
Sass 了解
前端
Penge6662 小时前
Webpack 打包从 0 到 1 实战笔记
前端
Penge6662 小时前
Webpack 入门:是什么、为什么需要、怎么使用?
前端
Penge6662 小时前
Ant Design(Antd)了解
前端
wangruofeng3 小时前
同一行代码,百种渲染:Asuka、React Native 与 Flutter 跨平台渲染机制深度拆解
前端·github
爱学习的程序媛3 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架