V1.0 SDK客户端的初始化和请求方式(Java)

您所在的位置:网站首页 sdk初始化失败怎么回事 V1.0 SDK客户端的初始化和请求方式(Java)

V1.0 SDK客户端的初始化和请求方式(Java)

2024-06-12 17:52| 来源: 网络整理| 查看: 265

SDK客户端初始化

在V1.0 SDK中,所有的云产品都共用同一个客户端。该客户端通过Core SDK中的方法初始化生成一个Client对象来处理所有的请求。

说明

示例采用读取环境变量的方式创建凭证,运行代码前需配置环境变量ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET。具体操作,请参见在Linux、macOS和Windows系统配置环境变量。

依赖信息

com.aliyun aliyun-java-sdk-core 4.6.3

代码示例

import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider; import com.aliyuncs.profile.DefaultProfile; public class Sample { public static void main(String[] args) { // 地域ID,用于自动寻址,更多请参见Endpoint配置章节 String regionId = "cn-shanghai"; // 通过读取环境变量获取AccessKey EnvironmentVariableCredentialsProvider credentialsProvider = new EnvironmentVariableCredentialsProvider(); DefaultProfile profile = DefaultProfile.getProfile(regionId); // 通过 SDK Core 保存用户的 profile 信息并初始化 client DefaultAcsClient client = new DefaultAcsClient(profile, credentialsProvider); } }说明

单Client的模式存在线程不安全的问题,而且通过一个profile信息在不同产品之间混用,容易造成的权限管理问题,建议您使用V2.0 SDK开发。

OpenAPI请求方式

在V1.0 SDK中,所有OpenAPI请求均通过SDK Core统一处理。云产品SDK中提供了OpenAPI的Request和Response对象,方便开发者简单应用,从而简化云服务调用和提高开发效率。以下是请求云服务器ECS DescribeRegions接口和短信服务SendSms接口的示例。有关请求参数和返回参数的描述,请参见各云产品文档中的API文档。

依赖信息

com.aliyun aliyun-java-sdk-core 4.6.3 com.aliyun aliyun-java-sdk-ecs 5.11.7 com.aliyun aliyun-java-sdk-dysmsapi 2.2.1

代码示例

package com.aliyun.sample; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse; import com.aliyuncs.ecs.model.v20140526.DescribeRegionsRequest; import com.aliyuncs.ecs.model.v20140526.DescribeRegionsResponse; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.profile.DefaultProfile; import com.google.gson.Gson; public class Sample { public static void main(String[] args) throws ClientException { // 地域ID,用于自动寻址,更多请参见Endpoint配置章节 String regionId = "cn-shanghai"; // 通过读取环境变量获取AccessKey EnvironmentVariableCredentialsProvider credentialsProvider = new EnvironmentVariableCredentialsProvider(); DefaultProfile profile = DefaultProfile.getProfile(regionId); // 通过SDK Core保存用户的profile信息并初始化client DefaultAcsClient client = new DefaultAcsClient(profile, credentialsProvider); // 实例化DescribeRegionsRequest对象 DescribeRegionsRequest describeRegionsRequest = new DescribeRegionsRequest(); // 实例化SendSmsRequest对象并传递入参 SendSmsRequest sendSmsRequest = new SendSmsRequest(); sendSmsRequest.setPhoneNumbers(""); // 通过SDK Core执行实际的HTTP请求将返回的结果序列化为SDK的Response结构 DescribeRegionsResponse describeRegionsResponse = client.getAcsResponse(describeRegionsRequest); SendSmsResponse sendSmsResponse = client.getAcsResponse(sendSmsRequest); // 若请求成功则打印响应内容 System.out.println(new Gson().toJson(describeRegionsResponse)); System.out.println(new Gson().toJson(sendSmsResponse)); } }说明

每个OpenAPI都有独立的Request,命名方式为${API}${Request},例如DescribeRegionRequest。

进阶文档

更多客户端初始化方式,请参见管理访问凭据。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3