调用RPC API和RESTful API
阿里云云产品的API分为RPC和RESTful两种类型,大部分产品使用的是RPC风格。当您使用阿里云CLI调用接口时,不同风格的API,调用方式不同。
判断API风格
调用产品接口时,首先需要判断API类型,选择标准的命令结构发起调用。您可以通过以下特点判断API类型。
调用RPC API
命令结构
在阿里云CLI中,调用RPC API时,基本命令结构如下。
aliyun <product> <APIName> [--parameter1 value1 --parameter2 value2 ...]
命令示例
以云服务器ECS的API
DescribeRegions
为例。有关此API的更多信息,请参见DescribeRegions - 查询可以使用的阿里云地域。aliyun ecs DescribeRegions
以云服务器ECS API
DescribeInstanceAttribute
为例。有关此API的更多信息,请参见DescribeInstanceAttribute - 查询实例所有属性信息。aliyun rds DescribeInstanceAttribute --InstanceId 'i-uf6f5trc95ug8t33****'
调用RESTful API
命令结构
在阿里云CLI中,调用RESTful API时,基本命令结构如下。
aliyun <product> <Method> <PathPattern> --body <RequestBody>
product
:需要调用的云产品code。例如容器服务Kubernetes版的产品code为cs
。Method
:请求方式,常用请求方式有GET
、PUT
、POST
、DELETE
。根据API文档选择合适的请求方式。PathPattern
:请求路径。根据产品API文档选择正确的请求路径。RequestBody
:请求主体。根据产品API文档编辑JSON字符串,或引用JSON格式文件。可使用
--help
选项获取关于以上参数的帮助信息。详情请参见获取帮助信息。
命令示例
GET请求
以容器服务 Kubernetes 版APIDescribeClusterDetail
为例。有关此API的更多信息,请参见DescribeClusterDetail - 查询指定集群的信息。
aliyun cs GET /clusters/{cluster_id}
PUT请求
以容器服务 Kubernetes 版APIModifyCluster
为例。有关此API的更多信息,请参见ModifyCluster - 修改集群配置。
aliyun cs PUT /api/v2/clusters/{ClusterId} --header "Content-Type=application/json" --body "$(cat input.json)"
POST请求
以容器服务 Kubernetes 版APICreateCluster
为例。有关此API的更多信息,请参见CreateCluster - 创建集群。
aliyun cs POST /clusters --header "Content-Type=application/json" --body "$(cat create.json)"
DELETE请求
以容器服务 Kubernetes 版APIDeleteClusterNodepool
为例。有关此API的更多信息,请参见DeleteClusterNodepool - 删除节点池。
aliyun cs DELETE /clusters/{ClusterId}/nodepools/{NodepoolId}