目前阿里云官方提供4 种语言的 SDK 版本,分别为 Java、Python、PHP、C#,具体每个版本的下载安装和使用方法如下:
更多语言版本的 SDK,您可以前往第三方 SDK 服务中进行选择。
快速入门
Java
以 Java 为例,SDK 可以通过如下方式安装和使用:
- 在阿里云官网 创建并管理你的 Access Key。
通过 maven 安装 SDK。添加 maven 库:[backcolor=transparent] [backcolor=transparent]<repositories>- [backcolor=transparent] [backcolor=transparent]<repository>
- [backcolor=transparent] [backcolor=transparent]<id>[backcolor=transparent]sonatype-nexus-staging[backcolor=transparent]</id>
- [backcolor=transparent] [backcolor=transparent]<name>[backcolor=transparent]Sonatype Nexus Staging[backcolor=transparent]</name>
- [backcolor=transparent] [backcolor=transparent]<url>[backcolor=transparent]https://oss.sonatype.org/service/local/staging/deploy/maven2/[backcolor=transparent]</url>
- [backcolor=transparent] [backcolor=transparent]<releases>
- [backcolor=transparent] [backcolor=transparent]<enabled>[backcolor=transparent]true[backcolor=transparent]</enabled>
- [backcolor=transparent] [backcolor=transparent]</releases>
- [backcolor=transparent] [backcolor=transparent]<snapshots>
- [backcolor=transparent] [backcolor=transparent]<enabled>[backcolor=transparent]true[backcolor=transparent]</enabled>
- [backcolor=transparent] [backcolor=transparent]</snapshots>
- [backcolor=transparent] [backcolor=transparent]</repository>
- [backcolor=transparent] [backcolor=transparent]</repositories>
添加jar包依赖:
- [backcolor=transparent] [backcolor=transparent]<dependency>
- [backcolor=transparent] [backcolor=transparent]<groupId>[backcolor=transparent]com.aliyun[backcolor=transparent]</groupId>
- [backcolor=transparent] [backcolor=transparent]<artifactId>[backcolor=transparent]aliyun-java-sdk-domain[backcolor=transparent]</artifactId>
- [backcolor=transparent] [backcolor=transparent]<version>[backcolor=transparent]2.0.3[backcolor=transparent]</version>
- [backcolor=transparent] [backcolor=transparent]</dependency>
- [backcolor=transparent] [backcolor=transparent]<dependency>
- [backcolor=transparent] [backcolor=transparent]<groupId>[backcolor=transparent]com.aliyun[backcolor=transparent]</groupId>
- [backcolor=transparent] [backcolor=transparent]<artifactId>[backcolor=transparent]aliyun-java-sdk-core[backcolor=transparent]</artifactId>
- [backcolor=transparent] [backcolor=transparent]<version>[backcolor=transparent]2.4.4[backcolor=transparent]</version>
- [backcolor=transparent] [backcolor=transparent]</dependency>
示例代码
- [backcolor=transparent] [backcolor=transparent]import[backcolor=transparent] com[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]domain[backcolor=transparent].[backcolor=transparent]model[backcolor=transparent].[backcolor=transparent]v20160511[backcolor=transparent].[backcolor=transparent]CreateOrderRequest[backcolor=transparent];
- [backcolor=transparent] [backcolor=transparent]import[backcolor=transparent] com[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]domain[backcolor=transparent].[backcolor=transparent]model[backcolor=transparent].[backcolor=transparent]v20160511[backcolor=transparent].[backcolor=transparent]CreateOrderResponse[backcolor=transparent];
- [backcolor=transparent] [backcolor=transparent]import[backcolor=transparent] com[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]IAcsClient[backcolor=transparent];
- [backcolor=transparent] [backcolor=transparent]import[backcolor=transparent] com[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]profile[backcolor=transparent].[backcolor=transparent]IClientProfile[backcolor=transparent];
- [backcolor=transparent] [backcolor=transparent]import[backcolor=transparent] com[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]DefaultAcsClient[backcolor=transparent];[backcolor=transparent]
- [backcolor=transparent] [backcolor=transparent]public[backcolor=transparent] [backcolor=transparent]class[backcolor=transparent] [backcolor=transparent]CreateOrderDemo[backcolor=transparent] [backcolor=transparent]{
- [backcolor=transparent] [backcolor=transparent]private[backcolor=transparent] [backcolor=transparent]static[backcolor=transparent] [backcolor=transparent]IAcsClient[backcolor=transparent] client [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]null[backcolor=transparent];
- [backcolor=transparent] [backcolor=transparent]//初始化client
- [backcolor=transparent] [backcolor=transparent]static[backcolor=transparent] [backcolor=transparent]{
- [backcolor=transparent] [backcolor=transparent]String[backcolor=transparent] regionId [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]"cn-hangzhou"[backcolor=transparent];[backcolor=transparent] [backcolor=transparent]//必填固定值,必须为“cn-hanghou”
- [backcolor=transparent] [backcolor=transparent]String[backcolor=transparent] accessKeyId [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]""[backcolor=transparent];[backcolor=transparent] [backcolor=transparent]// your accessKey
- [backcolor=transparent] [backcolor=transparent]String[backcolor=transparent] accessKeySecret [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]""[backcolor=transparent];[backcolor=transparent]// your accessSecret
- [backcolor=transparent] [backcolor=transparent]IClientProfile[backcolor=transparent] profile [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]DefaultProfile[backcolor=transparent].[backcolor=transparent]getProfile[backcolor=transparent]([backcolor=transparent]regionId[backcolor=transparent],[backcolor=transparent] accessKeyId[backcolor=transparent],[backcolor=transparent] accessKeySecret[backcolor=transparent]);
- [backcolor=transparent] [backcolor=transparent]// 若报Can not find endpoint to access异常,请添加以下此行代码
- [backcolor=transparent] [backcolor=transparent]// DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", "Domain", "domain.aliyuncs.com");
- [backcolor=transparent] client [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]new[backcolor=transparent] [backcolor=transparent]DefaultAcsClient[backcolor=transparent]([backcolor=transparent]profile[backcolor=transparent]);
- [backcolor=transparent] [backcolor=transparent]}
- [backcolor=transparent] [backcolor=transparent]public[backcolor=transparent] [backcolor=transparent]static[backcolor=transparent] [backcolor=transparent]void[backcolor=transparent] main[backcolor=transparent]([backcolor=transparent]String[backcolor=transparent][][backcolor=transparent] args[backcolor=transparent])[backcolor=transparent] [backcolor=transparent]{
- [backcolor=transparent] [backcolor=transparent]//初始化请求
- [backcolor=transparent] [backcolor=transparent]CreateOrderRequest[backcolor=transparent] request [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]new[backcolor=transparent] [backcolor=transparent]CreateOrderRequest[backcolor=transparent]();
- [backcolor=transparent] [backcolor=transparent]// CreateOrderRequest.setProtocol(ProtocolType.HTTPS); //指定访问协议
- [backcolor=transparent] [backcolor=transparent]// CreateOrderRequest.setAcceptFormat(FormatType.JSON); //指定api返回格式
- [backcolor=transparent] [backcolor=transparent]// CreateOrderRequest.setMethod(MethodType.POST); //指定请求方法
- [backcolor=transparent] [backcolor=transparent]// CreateOrderRequest.setRegionId("cn-hangzhou");//指定要访问的Region,仅对当前请求生效,不改变client的默认设置。
- [backcolor=transparent] [backcolor=transparent]ArrayList[backcolor=transparent]<[backcolor=transparent]SubOrderParam[backcolor=transparent]>[backcolor=transparent] subOrderList [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]new[backcolor=transparent] [backcolor=transparent]ArrayList[backcolor=transparent]<[backcolor=transparent]SubOrderParam[backcolor=transparent]>();
- [backcolor=transparent] [backcolor=transparent]SubOrderParam[backcolor=transparent] subOrderParam [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]new[backcolor=transparent] [backcolor=transparent]SubOrderParam[backcolor=transparent]();
- [backcolor=transparent] subOrderParam[backcolor=transparent].[backcolor=transparent]setRelatedName[backcolor=transparent]([backcolor=transparent]"ab.com"[backcolor=transparent]);
- [backcolor=transparent] subOrderParam[backcolor=transparent].[backcolor=transparent]setDomainTemplateID[backcolor=transparent]([backcolor=transparent]"0000000"[backcolor=transparent]);
- [backcolor=transparent] subOrderParam[backcolor=transparent].[backcolor=transparent]setAction[backcolor=transparent]([backcolor=transparent]"activate"[backcolor=transparent]);
- [backcolor=transparent] subOrderParam[backcolor=transparent].[backcolor=transparent]setPeriod[backcolor=transparent]([backcolor=transparent]12[backcolor=transparent]);
- [backcolor=transparent] subOrderList[backcolor=transparent].[backcolor=transparent]add[backcolor=transparent]([backcolor=transparent]subOrderParam[backcolor=transparent]);
- [backcolor=transparent] request[backcolor=transparent].[backcolor=transparent]setSubOrderParams[backcolor=transparent]([backcolor=transparent]subOrderList[backcolor=transparent]);
- [backcolor=transparent] [backcolor=transparent]//发起api调用并解析结果
- [backcolor=transparent] [backcolor=transparent]try[backcolor=transparent] [backcolor=transparent]{
- [backcolor=transparent] [backcolor=transparent]//IAcsClient提供了两种类型的调用结果返回, 一种方式是通过调用doAction方法获取取得原始的api 调用结果, 即返回HttpResponse类型的结果. 示例代码如下:
- [backcolor=transparent] [backcolor=transparent]//HttpResponse httpResponse = client.doAction(describeCdnServiceRequest);
- [backcolor=transparent] [backcolor=transparent]//System.out.println(httpResponse.getUrl());
- [backcolor=transparent] [backcolor=transparent]//System.out.println(new String(httpResponse.getContent()));
- [backcolor=transparent] [backcolor=transparent]//另一种方式, 通过调用 getAcsResponse 方法, 获取反序列化后的对象, 示例代码如下:
- [backcolor=transparent] [backcolor=transparent]CreateOrderResponse[backcolor=transparent] response [backcolor=transparent]=[backcolor=transparent] client[backcolor=transparent].[backcolor=transparent]getAcsResponse[backcolor=transparent]([backcolor=transparent]request[backcolor=transparent]);
- [backcolor=transparent] [backcolor=transparent]System[backcolor=transparent].[backcolor=transparent]out[backcolor=transparent].[backcolor=transparent]println[backcolor=transparent]([backcolor=transparent]response[backcolor=transparent].[backcolor=transparent]getOrderID[backcolor=transparent])
- [backcolor=transparent] [backcolor=transparent]}[backcolor=transparent] [backcolor=transparent]catch[backcolor=transparent] [backcolor=transparent]([backcolor=transparent]ServerException[backcolor=transparent] e[backcolor=transparent])[backcolor=transparent] [backcolor=transparent]{
- [backcolor=transparent] e[backcolor=transparent].[backcolor=transparent]printStackTrace[backcolor=transparent]();
- [backcolor=transparent] [backcolor=transparent]}[backcolor=transparent] [backcolor=transparent]catch[backcolor=transparent] [backcolor=transparent]([backcolor=transparent]ClientException[backcolor=transparent] e[backcolor=transparent])[backcolor=transparent] [backcolor=transparent]{
- [backcolor=transparent] e[backcolor=transparent].[backcolor=transparent]printStackTrace[backcolor=transparent]();
- [backcolor=transparent] [backcolor=transparent]}
- [backcolor=transparent] [backcolor=transparent]}
- [backcolor=transparent] [backcolor=transparent]}