822 字
4 分钟
RESTful API
2025-03-02

什么是 RESTful API#

REST API 定义如下:一种应用程序编程接口(API 或 Web API),遵循一组关于应用程序如何使用 HTTP 方法相互通信的架构规则。RESTful Web 服务使用 REST API 协议,因此有时也称为 RESTful API。

REST 通常用于构建 Web API,允许客户端与服务器之间通过 HTTP 协议进行交互。

REST 是由 Roy Fielding 在 2000 年提出的一种架构风格。它并不是一种协议或标准,而是一组指导原则,旨在帮助开发人员创建可扩展、性能良好且易于维护的 Web 服务。REST 的核心思想是通过一组简单、统一的接口来管理和操作服务器上的资源。

资源 Resources#

在 REST 中,资源是一个非常重要的概念。资源可以被视为 Web 服务中的实体对象,它可以是用户、订单、文件等任何具有唯一标识符的事物。每个资源都由一个 **URI(Uniform Resource Identifier,统一资源标识符)**标识。

资源的表示(Representations)#

资源可以有多种不同的表示形式,例如 JSON、XML、HTML 等。当客户端请求资源时,服务器会以特定的表示形式返回资源。表示形式通常通过 HTTP 头中的 Content-Type 指定,例如 application/json 表示 JSON 格式。

URI(统一资源标识符)#

要让一个资源可以被识别,需要有个唯一标识,在Web中这个唯一标识就是URI(Uniform Resource Identifier),URI既可以看成是资源的地址,也可以看成是资源的名称,如果某些信息没有使用URI来表示,那它就不能算是一个资源, 只能算是资源的一些信息而已,URI的设计应该遵循可寻址性原则,具有自描述性,需要在形式上给人以直觉上的关联。

通过上述描述,我们知道URI 是用于标识资源的唯一地址,每个资源都应该有一个唯一的 URI,这个 URI 可以看作是资源的“地址“。

  • api/user/profile/get:表示获取用户个人资料。
  • api/user/profile/add:表示添加用户个人资料。
  • api/user/profile/update:表示更新用户个人资料。
  • api/user/profile/delete:表示删除用户个人资料。

URI 应该是稳定的,不应该因为资源内部状态的变化而发生变化。此外,URI 应该是自解释的,这意味着我们可以从 URI 中大致了解所表示的资源。

HTTP 方法#

在 REST 中,HTTP 方法用于指定对资源执行的操作。常用的 HTTP 方法包括:

  • GET:检索资源。请求不会改变服务器状态。
  • POST:创建资源或在现有资源中执行子资源的创建操作。
  • PUT:更新资源。通常用于更新整个资源。
  • PATCH:部分更新资源。通常用于更新资源的部分字段。
  • DELETE:删除资源。

每种方法都应该在其相应的上下文中使用。例如:

  • GET api/user/profile/get应该用于检索用户的个人资料;
  • DELETE api/user/profile/delete 应该用于删除用户的个人资料;
  • POST api/user/profile/add 应该用于添加用户的个人资料;
  • PUT api/user/profile/update 应该用于更新用户的个人资料。

RESTful API设计规范#

RESTful API
https://fuwari.vercel.app/posts/restfulapi/
作者
Lettle
发布于
2025-03-02
许可协议
CC BY-NC-SA 4.0