このトピックでは、Alibaba CloudプロダクトのAPIスタイルについて説明します。
Alibaba Cloud製品は、RPCとROAの2つのスタイルを使用してAPIを定義します。
RPCスタイル
リモートプロシージャコール (RPC) は、あるプログラムが別のプログラムの関数またはメソッドをローカルであるかのように呼び出すことを可能にするプロトコルです。
RPCスタイルのAPIは、リソースを操作するのではなく、関数とメソッドを呼び出します。 サーバに要求を送信するとき、クライアントは、リソースの識別子ではなく、関数またはメソッドのパラメータを渡す。 リクエストを受信した後、サーバーは指定された関数またはメソッドを実行し、結果を返します。
RPC APIでサポートされているメソッド: GETとPOST。
RPCスタイルでAPIを提供する製品には、Elastic Compute Service (ECS) 、ApsaraDB RDS、およびContent Delivery Network (CDN) があります。
ROAスタイル
REST (Representational State Transfer) は、webサービスの設計に使用されるアーキテクチャスタイルです。 RESTful APIを使用すると、クライアントはHTTPリクエストを介してサーバーと対話し、HTTPメソッド (GET、POST、PUT、およびDELETEなど) を使用してCRUD操作 (作成、読み取り、更新、および削除) を実行できます。
リソース指向アーキテクチャ (ROA) は、リソース指向アーキテクチャスタイルであり、RESTスタイルの拡張です。
ROA APIでサポートされるメソッド:
GET: GETはサーバーからリソースを取得するために使用され、サーバー上のリソースを変更しません。
POST: POSTは、サーバーにデータを送信して、新しいリソースを作成したり、リソースに対する操作を実行したりするために使用されます。
PUT: PUTは、サーバー上のリソースを更新するために使用されます。 クライアントがPUTリクエストを送信するときは、リソースに関する完全な情報を提供する必要があります。
DELETE: DELETEは、サーバーからリソースを削除するために使用されます。
ROAスタイルでAPIを提供する製品には、Application Real-Time Monitoring Service (ARMS) 、Batch Compute、Container Service for Kubernetes (ACK) 、Elasticsearchなどがあります。
APIのスタイルの確認
OpenAPI Explorerコンソールでクラウド製品のAPIを検索します。 APIデバッグモジュールで、SDKサンプルコードを確認します。 サンプルコードで
ヘッダー
にパラメーターを記述する場合、APIはROAスタイルになります。 それ以外の場合は、RPCスタイルになります。