Web 開発 API スタイル: 実践的な概要
サービス間 API 呼び出しは Web 開発の基礎です。このガイドでは、いくつかの一般的な API アーキテクチャ スタイルを実践的な例とともに説明します。
REST (Representational State Transfer) は、最も普及している API スタイルです。 リソースにアクセスするための HTTP リクエストを作成するというシンプルさにより、初心者にも使いやすいものになっています。
この例は、RESTful API を使用してブラウザーに GitHub 絵文字を表示する方法を示しています。
サーバーからクライアントへのメッセージのプッシュには、WebSocket が最適です。 これらにより、永続的な双方向通信が可能になります。
この例では、メッセージを echo.websocket.org に送信し、エコーバックします。
GraphQL は REST に似ていますが、応答データ構造をクライアント側でカスタマイズできます。
この例では、ポケモンの名前に基づいて特定のポケモンのデータ (ID、身長、体重、基本幸福度、捕獲率) を取得します。 クエリを変更して追加のフィールドを取得します。
Webhook はイベント駆動型の通信を促進します。 イベントがトリガーされると、Webhook サービスは事前定義された URL に HTTP POST リクエストを送信します。 これは CI/CD パイプラインで一般的に使用され、GitHub ボットも強化します。
この例では、Webhook リダイレクトに smee.io を使用します。 デモンストレーションでは送信者と受信者は同じアプリケーション内にありますが、実際のシナリオでは、送信者と受信者は別のサーバーに存在します。 トリガー エンドポイントはメッセージを 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 中国語 Web サイトの他の関連記事を参照してください。