閱讀296 返回首頁    go 小米 go 小米5


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

  上一篇:go 檢測IP信息__輔助工具接口_API 手冊_CDN-阿裏雲
  下一篇:go 用戶區域分布__JAVA SDK_SDK 手冊_CDN-阿裏雲