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-阿里云