发布于 2026-01-06 3 阅读
0

什么是 REST API?AWS 安全直播!

什么是 REST API?

AWS 安全直播!

你听说过人们谈论在网络上使用 REST API 吗?你知道当你点击互联网上的某个东西时,通信是如何发生的吗?你有没有想过互联网是如何让你如此轻松地发送和接收数据的?继续阅读,了解更多关于互联网通信工作原理的信息。

什么是API?

在深入探讨 REST API 的具体含义之前,我们需要了解 API(应用程序编程接口)的含义及其在数据发送和接收中的作用。根据维基百科的定义,API 或应用程序编程接口是一种计算机接口,它定义了多个软件中介之间的交互。让我们用更简单的语言来解释一下。API 是一种帮助应用程序连接到另一个应用程序的接口。它是应用程序之间通过互联网发送和接收数据的媒介。每次我们在笔记本电脑上浏览网站或在手机上使用应用程序时,实际上我们都在使用 API。

让我们用一个现实生活中的例子来理解它。想象一下,你去图书馆想借一本书。乍一看,你可能找不到这本书,于是你向图书管理员求助,询问这本书在哪里。现在图书管理员有两个选择:要么他去图书馆的相应区域,把书取下来给你,要么他指引你到正确的区域,确保你能拿到书。他接收你的请求(借阅X书),并确保你得到响应(拿到X书)。这与在线书店或购书应用(例如亚马逊)的API工作原理类似。当你选择一本书时,API会向服务器发送请求,服务器会检查数据库,确认这本书是否可用,然后返回响应。API接收到响应后,会以你能理解的格式将其发送回给你。如果出现错误,API会处理错误信息,并以易于理解的方式发送给你。

此外,API 还能提供额外的安全保障。您的手机永远不会完全暴露在服务器上,服务器的数据也永远不会完全暴露给您的手机。数据正是通过这些 API 进行发送和接收的,从而只共享必要的信息,增加了一层额外的安全保障。现在您已经了解了 API 的概念,接下来让我们深入了解 REST API。

REST API

REST 代表表述性状态转移(Representational State Transfer),由 Roy Fielding 于 2000 年提出。REST 是一种架构风格,包含六项约束,只有满足这些约束才能被称为 RESTful 架构。简单来说,它是一组开发者必须遵循的规则,以确保数据以特定格式发送和接收。API 定义了通信方式,而 REST 定义了 API 的格式。发送的请求是 URL,响应是返回给用户的数据。

一个 API 要符合 RESTful 规范,必须满足以下六个约束条件:

1)统一接口

客户端和服务器之间所有 API 都应使用统一的接口。开发人员一旦完成某个类的 API 开发,就应该能够轻松地开发该类的其他 API。通过应用统一接口,架构得以简化,API 的理解也更加清晰。由于标准接口相同,API 的实现也变得更加容易。统一接口的四个指导原则如下:

  • 基于资源的
  • 通过表征操纵资源
  • 自我描述信息
  • 超媒体作为应用状态引擎(HATEOAS)

2)客户端-服务器

客户端和服务器应该是两个独立实体。客户端不处理数据存储,从而提高客户端的可移植性;服务器不处理用户界面,从而提高服务器的可扩展性。

3)无国籍

客户端向服务器发出的每个请求都必须包含处理该请求所需的所有必要信息,这些信息可以包含在 URI、查询字符串参数、请求体或请求头中。会话状态应完全存在于客户端,不应利用服务器上存储的任何上下文信息。

4)分层系统

分层系统通过实现负载均衡来改善架构和系统可扩展性。分层系统还可以强制执行安全策略并提供共享缓存,从而提高性能。

5)可缓存

客户端可以缓存其响应。因此,必须明确标记响应是否可缓存,以防止客户端在响应后续请求时重复使用不合适的数据。

6)按需编码(可选)

客户端功能可以通过执行脚本进行扩展。服务器也可以将其功能扩展到客户端,允许客户端执行其逻辑。

如果一个 API 满足上述所有约束条件,则
称为 RESTful API。REST API 通常基于 HTTP 协议,尤其是在用于 Web API 时。因此,REST API 会从客户端向服务器发起请求,并通过 HTTP 协议返回响应数据。

动手实践

现在我们来测试一下 API 请求。为了便于说明,我们将使用 Twitter API 来获取包含我们输入的特定词语的推文。

在测试此 API 之前,您需要创建一个 Twitter 开发者账号。输入您使用此 API 的用例并验证您的邮箱后,系统会要求您输入项目名称。您可以选择一个尚未被占用的项目名称,然后您将获得授权凭证——API 密钥、API 私钥和 Bearer Token。您可以在发出 API 请求时使用这些凭证。

测试 Twitter API

您可以使用 Postman 来测试您的 API。Postman 提供了一系列工具,使 API 开发变得轻松便捷。

第一步——打开一个新标签页,选择GET请求。输入如下所示的API请求。

请求 API

步骤 2 - 点击授权选项卡,然后输入在创建 Twitter 开发者帐户时为您的项目提供的 Bearer Token。

API 的持有者令牌

步骤 3 - 请确保您的“标头”选项卡中包含以下字段。“授权”字段将包含您的 Bearer Token,而 Cookie 将包含 personalization_id 和 guest_id,这两个 ID 对您而言是唯一的。

所有 API 标头

步骤 4 - 现在点击发送按钮,您将在下方看到响应。响应包含符合我们输入的查询参数(本例中为“疫苗”)的数据。每个数据项包含一个 id(即推文 ID)和一个文本字段(即推文正文)。

API响应

恭喜!您终于发出了第一个 API 请求。您可以随意体验API,并可参考此链接了解更多关于使用 Twitter API 的信息。


结论

希望您已经对 REST API 有了一些了解,并且知道它是如何用于互联网通信的。如果您喜欢这篇文章,并想阅读更多类似文章,请务必在Twitter上关注我,我会在那里发布最新文章的更新信息。

文章来源:https://dev.to/rahil1304/what-is-a-rest-api-1j9o