SDK使用說明__JAVA SDK_SDK 手冊_CDN-阿裏雲
引入SDK
請在pom.xml文件中增加以下依賴, 準確的SDK版本號, 請參考阿裏雲官網.
<dependencies>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-cdn</artifactId>
<version>2.0.1</version>
</dependency>
</dependencies>
初始化Client
SDK通過IAcsClient的instance來完成openapi的調用, 因此在您發起調用前, 請先初始化IAcsClient實例. 示例代碼如下:
public void init() throws ClientException {
IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", "<your accessKey>", "<your accessSecret>");
//DefaultProfile.addEndpoint("cn-hangzhou-2", "cn-hangzhou-2", "Cdn", "cdn.aliyuncs.com"); //添加自定義endpoint。
client = new DefaultAcsClient(profile);
//System.setProperty("http.proxyHost", "127.0.0.1"); //此設置用於設置代理,可用fiddler攔截查看http請求,便於調試。
//System.setProperty("http.proxyPort", "8888");
}
初始化請求
發起API調用前, 先初始化對應的請求的request實例, 以DescribeCdnService(查詢CDN服務)接口為例, 示例代碼如下:
public void requestInitSample() {
DescribeCdnServiceRequest describeCdnServiceRequest = new DescribeCdnServiceRequest();
//describeCdnServiceRequest.setProtocol(ProtocolType.HTTPS); //指定訪問協議
//describeCdnServiceRequest.setAcceptFormat(FormatType.JSON); //指定api返回格式
//describeCdnServiceRequest.setMethod(MethodType.POST); //指定請求方法
//describeCdnServiceRequest.setRegionId("cn-hangzhou");//指定要訪問的Region,僅對當前請求生效,不改變client的默認設置。
try {
HttpResponse httpResponse = client.doAction(describeCdnServiceRequest);
System.out.println(httpResponse.getUrl());
System.out.println(new String(httpResponse.getContent()));
//todo something.
} catch (ServerException e) {
e.printStackTrace();
} catch (ClientException e) {
e.printStackTrace();
}
}
}
發起openapi調用並解析結果
利用上一步初始化好的IAcsClient, 您便可以發起openapi調用. IAcsClient提供了兩種類型的調用結果返回, 一種方式是通過調用doAction方法獲取取得原始的api調用結果, 即返回HttpResponse類型的結果. 示例代碼如下:
public void invokeSample() {
DescribeCdnServiceRequest describeCdnServiceRequest = new DescribeCdnServiceRequest();
try {
HttpResponse httpResponse = client.doAction(describeCdnServiceRequest);
System.out.println(httpResponse.getUrl());
System.out.println(new String(httpResponse.getContent()));
//todo something else.
} catch (ServerException e) {
e.printStackTrace();
} catch (ClientException e) {
e.printStackTrace();
}
}
另一種方式, 通過調用getAcsResponse方法, 獲取反序列化後的對象, 示例代碼如下:
public void invokeSample() {
DescribeCdnServiceRequest describeCdnServiceRequest = new DescribeCdnServiceRequest();
try {
DescribeCdnServiceResponse describeCdnServiceResponse = client.getAcsResponse(describeCdnServiceRequest);
//todo something.
} catch (ServerException e) {
e.printStackTrace();
} catch (ClientException e) {
e.printStackTrace();
}
}
異常類型
- 當http status>=200且<300 表示API調用成功.
- 當http status>=300且<500 SDK拋ClientException, 表示客戶端錯誤.
- 當http status>=500 SDK拋ServerException, 表示服務器端錯誤.
最後更新:2016-11-23 16:03:56
上一篇:
檢測IP信息__輔助工具接口_API 手冊_CDN-阿裏雲
下一篇:
用戶區域分布__JAVA SDK_SDK 手冊_CDN-阿裏雲
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲