package com.test.alicloud;
import com.aliyun.asapi.ASClient;
import com.aliyun.asapi.Cloud;
import java.util.HashMap;
import java.util.Map;
public class AliCloudDemo {
// 根据使用情况添加
private static final Map<String, String> SERVICE_VERSION_MAP = new HashMap() {{
put("ecs", "2014-05-26");
put("ascm", "2019-05-10");
put("vpc", "2016-04-28");
put("HBase", "2019-01-01");
}};
public static void main(String[] args) {
// 代理设置
Cloud cloud = new Cloud();
// 设置IP。
cloud.setConfig("proxy_host", "xxx");
// 设置端口。
cloud.setConfig("proxy_port", String.valueOf(123));
// 创建ASClient连接。如果不需要代理则 ASClient client = new ASClient()即可
ASClient client = new ASClient(cloud);
// 设置身份标识,标识调用来源,无实际作用,可随意设置,必填项。
client.setSdkSource("test123213");
// 是否参数首字母大写转化。
client.setIsFormat(false);
String regionId = "cn-wulan-ste7-d01";
String urlDomainName = "cloud.ste7.com";
// ASAPI的Endpoint地址。 https://public.asapi.cn-wulan-ste7-d01.cloud.ste7.com/asapi/v3
String endpoint = String.format("https://public.asapi.%s.%s/asapi/v3", regionId, urlDomainName);
// 准备请求参数。
Map<String, Object> parameters = new HashMap<String, Object>();
// 授权相关参数。根据情况一般默认使用组织的ak、sk
String orgAk = "xxx";
String orgSk = "xxx";
String userAk = "xxx";
String userSk = "xxx";
parameters.put(ASClient.ACCESSKEY_ID, userAk);
parameters.put(ASClient.ACCESSKEY_SECRET, userSk);
parameters.put(ASClient.REGIONID, regionId);
// 产品接口信息参数。
// ecs、ascm、vpc等,一般ascm接口需要用用户的ak、sk
String productName = "ascm";
parameters.put(ASClient.PRODUCT, productName);
// 接口名称。示例为获取组织列表
parameters.put(ASClient.ACTION, "GetOrganizationList");
// 接口版本
parameters.put(ASClient.VERSION, SERVICE_VERSION_MAP.get(productName));
// 当使用STS AcessKey调用接口时,可通过下面方式填写SecurityToken信息。
// parameters.put(ASClient.SECURITY_TOKEN, "<yourSecurityToken>");
// 接口业务参数设置,根据实际情况设置。
//parameters.put("<业务参数>", "<参数值>");
parameters.put("id", "1111ss");
/**
* 一般用不上
* 设置Headers,云产品接口需要提供多个公共Header参数
* 包括:x-acs-regionid、x-acs-organizationid、x-acs-resourcegroupid、x-acs-instanceid。详情可参照获取公共Header参数。
*/
Map<String, String> headers = new HashMap<String, String>();
headers.put("Content-Type", "application/json;charset=UTF-8");
//headers.put("x-acs-regionid", regionId);
//headers.put("x-acs-resourcegroupid", "1659");
//headers.put("x-acs-organizationid", "1533");
//headers.put("x-acs-instanceid", "<your-instanceid>");
// 设置连接超时。
// client.setConnectTimeout(10000);
// 设置请求超时。
// client.setSocketTimeout(10000);
try {
// 发起请求,并获取返回。
String result = client.doPost(endpoint, headers, parameters);
System.out.println(result);
} catch (Exception e) {
e.printStackTrace();
}
}
}
阿里公有云、专有云ASAPI网关方式通用调用java示例
需积分: 15 4 浏览量
2022-09-30
17:40:42
上传
评论
收藏 14.2MB ZIP 举报
sharn
- 粉丝: 0
- 资源: 6
最新资源
- 基于matlab实现用有限元法计算电磁场的Matlab工具 .rar
- 基于matlab实现有限元算法 计算电磁场问题 边界条件包括第一类边界和第二类边界.rar
- 基于matlab实现用于计算不同车重下的电动汽车动力性和经济性.rar
- 基于matlab实现遗传算法求解多车场车辆路径问题 有多组算例可以用.rar
- 浏览器.apk
- 基于matlab实现是一个matlab中的power system 中搭建的一个模型
- 基于JSP毕业设计-教学管理系统(源代码+论文).zip
- 基于JSP毕业设计-家政管理系统-毕业设计.zip
- 基于Python实现淘宝商品评论采集(含逆向)源代码
- 基于matlab实现多目标进化算法NSGAⅡ&Matlab讲解.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0