本文介绍ACM OpenAPI的SDK获取方法、调用示例以及地域和接入点的设置。
说明 此OpenAPI的SDK主要用于对应用配置进行管理,如您需要在应用运行时操作和监听配置,可考虑使用SDK简介。
前提条件
在安装和使用Alibaba Cloud SDK for Java前,确保您已经:
- 安装Java环境。
Alibaba Cloud SDK for Java要求使用JDK1.6或更高版本。
- 注册阿里云账号并生成访问密钥(AccessKey)。
详情参考创建AccessKey。
安装Alibaba Cloud SDK for Java
您可以通过以下两种方式获取Alibaba Cloud SDK for Java。
- 通过Maven直接安装(推荐):打开Maven项目下的pom.xml文件,添加aliyun-java-sdk-core和aliyun-java-sdk-acm依赖。
<dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.4.9</version> </dependency> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-acm</artifactId> <version>1.0.1</version> </dependency>
- 在集成开发环境中导入JAR文件:无论您使用Eclipse还是IntelliJ作为集成开发环境,都可以通过导入JAR文件的方式安装Alibaba Cloud SDK for Java。您可在阿里云开发工具包(SDK)中下载ACM的SDK文件。
使用Java SDK调用API
以下代码展示了如何调用ACM的管控API。在实际使用时,请将示例中的accessKey、secretKey、regionId等参数的值替换为您实际的参数值。
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.acm.model.v20200206.DescribeConfigurationRequest;
import com.aliyuncs.acm.model.v20200206.DescribeConfigurationResponse;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.http.ProtocolType;
public class GetConfigurationExample {
public static void main(String[] args) {
String accessKey = <yourAccessKeyId>;//阿里云主账号或子账号的 AccessKey ID。
String secretKey = <yourAccessKeySecret>;//阿里云主账号或子账号的 AccessKey Secret。
String regionId = "cn-hangzhou";//要执行 API 调用的应用所在地域 ID。
String dataId = <yourDataId>;//配置项DataId值
String group = <yourGroup>;//配置项所在分组
String namespaceId = <yourNamespace>;//配置项所在命名空间
DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKey, secretKey);
DefaultAcsClient defaultAcsClient = new DefaultAcsClient(defaultProfile);
DescribeConfigurationRequest request = new DescribeConfigurationRequest();
request.setSysProtocol(ProtocolType.HTTPS);//使用HTTPS协议(公网region暂不支持)
request.setNamespaceId(namespaceId);
request.setGroup(group);
request.setDataId(dataId);
try {
DescribeConfigurationResponse response = defaultAcsClient.getAcsResponse(request);
System.out.println("配置项内容为:" + response.getConfiguration().getContent());
} catch (ClientException e) {
e.printStackTrace();
}
}
}
地域和接入点列表
ACM API支持的地域,以及对应的regionId和domain如下表所示。
地域名称 | regionId | domain | 内网domain |
---|---|---|---|
公网 | public | acm.public.aliyuncs.com | 无 |
华东 1(杭州) | cn-hangzhou | acm.cn-hangzhou.aliyuncs.com | acm-vpc.cn-hangzhou.aliyuncs.com |
华东 2(上海) | cn-shanghai | acm.cn-shanghai.aliyuncs.com | acm-vpc.cn-shanghai.aliyuncs.com |
华北 1(青岛) | cn-qingdao | acm.cn-qingdao.aliyuncs.com | acm-vpc.cn-qingdao.aliyuncs.com |
华北 2(北京) | cn-beijing | acm.cn-beijing.aliyuncs.com | acm-vpc.cn-beijing.aliyuncs.com |
华北 3(张家口) | cn-zhangjiakou | acm.cn-zhangjiakou.aliyuncs.com | acm-vpc.cn-zhangjiakou.aliyuncs.com |
华南 1(深圳) | cn-shenzhen | acm.cn-shenzhen.aliyuncs.com | acm-vpc.cn-shenzhen.aliyuncs.com |
中国(香港) | cn-hongkong | acm.cn-hongkong.aliyuncs.com | acm-vpc.cn-hongkong.aliyuncs.com |
新加坡 | ap-southeast-1 | acm.ap-southeast-1.aliyuncs.com | acm-vpc.ap-southeast-1.aliyuncs.com |
德国(法兰克福) | eu-central-1 | acm.eu-central-1.aliyuncs.com | acm-vpc.eu-central-1.aliyuncs.com |
日本(东京) | ap-northeast-1 | acm.ap-northeast-1.aliyuncs.com | acm-vpc.ap-northeast-1.aliyuncs.com |
美国(硅谷) | us-west-1 | acm.us-west-1.aliyuncs.com | acm-vpc.us-west-1.aliyuncs.com |
美国(弗吉尼亚) | us-east-1 | acm.us-east-1.aliyuncs.com | acm-vpc.us-east-1.aliyuncs.com |
澳大利亚(悉尼) | ap-southeast-2 | acm.ap-southeast-2.aliyuncs.com | acm-vpc.ap-southeast-2.aliyuncs.com |