Web 开发 API 样式:实用概述
服务间 API 调用是 Web 开发的基础。本指南通过实际示例探讨了几种常见的 API 架构风格。
REST(表述性状态传输)是最流行的 API 风格。 它的简单性(发出 HTTP 请求来访问资源)使其适合初学者。
此示例演示使用 RESTful API 在浏览器中显示 GitHub 表情符号:
对于服务器到客户端的消息推送,WebSocket 是理想的选择。 它们实现持久的双向通信。
此示例向 echo.websocket.org 发送一条消息,该消息会回显:
GraphQL 类似于 REST,但提供响应数据结构的客户端自定义。
此示例根据 Pokémon 的名称检索特定 Pokémon 数据(ID、身高、体重、基本幸福度和捕获率)。 修改查询以检索其他字段。
Webhooks 促进事件驱动的通信。 当事件触发时,Webhook 服务会向预定义的 URL 发送 HTTP POST 请求。 这通常用于 CI/CD 管道,甚至为 GitHub 机器人提供支持。
此示例使用 smee.io 进行 webhook 重定向。 虽然发送方和接收方在同一应用程序中进行演示,但在现实场景中,它们驻留在不同的服务器上。 触发端点向 smee.io 发送一条消息,smee.io 将其转发至接收端点。 您可以通过分叉沙箱来修改消息。
API Style | Architecture Style | Data Format | Communication Workflow |
---|---|---|---|
RESTful | HTTP-based, standard HTTP methods | JSON, XML | Client requests; server responds. |
WebSockets | Bidirectional, persistent connection | Text, Binary | Client and server establish a persistent connection for real-time communication. |
GraphQL | Query language, client-defined response | JSON | Client sends a query; server returns the specified data. |
Webhook | Event-driven, server initiates request | JSON | Event triggers server to send an HTTP request to a client-defined URL. |
以上是Web 开发人员必须了解的 API 结构(附示例)的详细内容。更多信息请关注PHP中文网其他相关文章!