すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud SDK:APIスタイル

最終更新日:Jan 15, 2025

このトピックでは、API操作のリモートプロシージャコール(RPC)スタイルとリソース指向アーキテクチャ(ROA)スタイルについて説明します。Alibaba Cloud API操作を呼び出すリクエストを作成する前に、アクセスするサービスのAPIスタイルを確認する必要があります。APIスタイルによって、使用できるリクエストメソッドと、リクエストヘッダー、クエリ文字列、およびリクエストボディの作成方法が決まります。

Alibaba Cloud サービスの API スタイルは、RPCとROAです。

RPCスタイル

RPCは、あるプログラムが別のプログラムの関数またはメソッドをローカルであるかのように呼び出すことができるプロトコルです。

RPCスタイルのAPI呼び出しでは、クライアントとサーバーは、リソース操作ではなく、関数またはメソッドの呼び出しに基づいて相互に通信します。クライアントがサーバーにリクエストを送信すると、クライアントはリソースの識別子ではなく、関数またはメソッドのパラメーターを渡します。サーバーはリクエストを受信した後、指定された関数またはメソッドを実行し、結果を返します。

RPC APIでサポートされているメソッドには、GETとPOSTが含まれます。

RPCスタイルで API を提供するAlibaba Cloudサービスには、Elastic Compute Service(ECS)、ApsaraDB RDS、およびContent Delivery Network(CDN)などがあります。

リクエスト例:

http://ecs.aliyuncs.com/?SignatureVersion=1.0&Action=DescribeDedicatedHosts&Format=XML&SignatureNonce=3ee8c1b8-xxxx-xxxx-xxxx-xxxxxxxxx&Version=2014-05-26&AccessKeyId=testid&Signature=OLeaidS1JvxuMvnyHOwuJ%2BuX5qY%3D&SignatureMethod=HMAC-SHA1&Timestamp=2016-02-23T12%3A46%3A24Z&RegionId=cn-hangzhou&Status=Available

ROAスタイル

Representational State Transfer(REST)は、Webサービスを設計するために使用されるアーキテクチャスタイルです。RESTful APIを使用すると、クライアントはHTTPリクエストを送信することでサーバーと対話し、GET、POST、PUT、DELETEなどのHTTPメソッドを使用して、作成、読み取り、更新、削除(CRUD)操作を実行できます。

ROAは、リソース指向のアーキテクチャスタイルであり、RESTスタイルの拡張です。

ROA APIでサポートされているメソッドは次のとおりです。

  1. GET:サーバーからリソースを取得し、サーバー上のリソースを変更しません。

  2. POST:サーバーにデータを送信してリソースを作成したり、リソースに対して操作を実行したりします。

  3. PUT:サーバー上のリソースを更新します。クライアントがPUTリクエストを送信する場合、クライアントは完全なリソースデータを提供する必要があります。

  4. DELETE:サーバーからリソースを削除します。

ROAスタイルで API を提供するAlibaba Cloudサービスには、Application Real-Time Monitoring Service(ARMS)、Batch Compute、Container Service for Kubernetes(ACK)、Elasticsearchなどがあります。リクエスト例:

POST /clusters/test_cluster_id/triggers HTTP/1.1
{
  "x-acs-action":"CreateTrigger",
  "x-acs-version":"2015-12-15",
  "Accept":"application/json",
  "Authorization": "acs testid:D9uFJAJgLL+dryjBfQK+YeqGtoY=",
  "x-acs-signature-nonce":"15215528852396",
  "Date":"Tue 9 Apr 2022 07:35:29 GMT",
  "x-acs-signature-method":"HMAC-SHA1",
  "Content-MD5":"Gtl/0jNYHf8t9Lq8Xlpaqw=="
  "Host":"cs.aliyuncs.com" 
}
{
 	"cluster_id":"test_cluster_id",
 	"project_id":"default/nginx-test",
 	"action":"redeploy",
 	"type":"deployment"
}

APIのスタイルを確認する

  1. クラウドサービスのAPIスタイルは、サービスの [APIリファレンス][機能別操作リスト] トピックで確認できます。

  2. OpenAPI Explorer でクラウドサービスのAPIを検索します。[APIデバッグ] モジュールで、SDKサンプルコードを確認します。サンプルコードに headers へのパラメーターの書き込みが含まれている場合、APIはROAスタイルです。それ以外の場合、APIはRPCスタイルです。