从零开始使用腾讯云Java SDK

您所在的位置:网站首页 java怎么导入sdk 从零开始使用腾讯云Java SDK

从零开始使用腾讯云Java SDK

2023-09-20 05:26| 来源: 网络整理| 查看: 265

腾讯云开发者工具套件(SDK)是云 API 3.0 平台的配套工具。本文以 Java SDK 为例,介绍如何使用、调试并接入腾讯云产品 API。

依赖环境

要使用腾讯云 Java SDK,用户需要满足以下的依赖环境:

JDK 7版本及以上。从腾讯云控制台开通相应产品。获取安全凭证:安全凭证包含 SecretId 及 SecretKey 两部分。SecretId 用于标识 API 调用者的身份,SecretKey 用于加密签名字符串和服务器端验证签名字符串的密钥。前往 API 密钥管理 页面,即可进行获取,如下图所示:获取调用地址:调用地址(endpoint)一般形式为*.tencentcloudapi.com,产品的调用地址有一定区别,例如,云服务器的调用地址为 cvm.tencentcloudapi.com。具体调用地址可参考对应产品的 API 文档。安装JDK8

前往 官网安装指南界面 ,按照指引下载并安装JDK8

安装IDEA

前往 IEDA官方安装指南界面 ,按照指引下载并安装IDEA

安装SDK教程方式一:通过Maven安装(推荐)

操作步骤如下(以IDEA为例示范安装):

1. 新建一个Maven项目2. 打开pom.xml文件3. 在pom.xml文件中添加依赖项

为您的项目添加 Maven 依赖项,只需在 pom.xml 中找到或手动输入dependencies标签,在里面添加以下依赖项即可。

com.tencentcloudapi tencentcloud-sdk-java 3.1.302

添加依赖项代码示意图如下所示:

4.添加代码后点击重新加载Maven项目5. 查看安装是否成功

查看项目目录下的外部库中是否有下图框出来的文件,若存在这些文件则表明已经成功安装SDK。

方式二:通过源码包安装

安装流程如下:

前往 Github 代码托管地址 下载源码压缩包,示意图如下所示:解压源码包到您项目合适的位置。需要将vendor目录下的jar包放在java的可找到的路径中。使用方法可参考下方示例。使用SDK示例使用流程1. 确认获取安全凭证

前往 API 密钥管理 页面获取安全凭证 SecretId 和 SecretKey 两部分,在上文的依赖环境中已提到该点。

2. 使用示例代码测试

我们为您提供简化版和详细版两个版本的示例代码,您可以任选一个版本进行测试使用,具体详细的使用流程在下文中会有说明,示例代码如下所示:

示例代码简化版import com.tencentcloudapi.common.Credential; import com.tencentcloudapi.common.exception.TencentCloudSDKException; import com.tencentcloudapi.cvm.v20170312.CvmClient; import com.tencentcloudapi.cvm.v20170312.models.DescribeInstancesRequest; import com.tencentcloudapi.cvm.v20170312.models.DescribeInstancesResponse; public class DescribeInstances { public static void main(String[] args) { try { Credential cred = new Credential("secretId", "secretKey"); CvmClient client = new CvmClient(cred, "ap-shanghai"); DescribeInstancesRequest req = new DescribeInstancesRequest(); DescribeInstancesResponse resp = client.DescribeInstances(req); System.out.println(DescribeInstancesResponse.toJsonString(resp)); } catch (TencentCloudSDKException e) { System.out.println(e.toString()); } } }示例代码详细版import com.tencentcloudapi.common.Credential; import com.tencentcloudapi.common.exception.TencentCloudSDKException; // 导入对应产品模块的client import com.tencentcloudapi.cvm.v20170312.CvmClient; // 导入要请求接口对应的request response类 import com.tencentcloudapi.cvm.v20170312.models.DescribeInstancesRequest; import com.tencentcloudapi.cvm.v20170312.models.DescribeInstancesResponse; import com.tencentcloudapi.cvm.v20170312.models.Filter; //导入可选配置类 import com.tencentcloudapi.common.profile.ClientProfile; import com.tencentcloudapi.common.profile.HttpProfile; import com.tencentcloudapi.common.profile.Language; public class DescribeInstances { public static void main(String[] args) { try { // 实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey,此处还需注意密钥对的保密 Credential cred = new Credential("secretId", "secretKey"); // 实例化一个http选项,可选的,没有特殊需求可以跳过 HttpProfile httpProfile = new HttpProfile(); // 从3.1.16版本开始, 单独设置 HTTP 代理 // httpProfile.setProxyHost("真实代理ip"); // httpProfile.setProxyPort(真实代理端口); httpProfile.setReqMethod("GET"); // get请求(默认为post请求) httpProfile.setProtocol("https://"); // 在外网互通的网络环境下支持http协议(默认是https协议),请选择(https:// or http://) httpProfile.setConnTimeout(30); // 请求连接超时时间,单位为秒(默认60秒) httpProfile.setWriteTimeout(30); // 设置写入超时时间,单位为秒(默认0秒) httpProfile.setReadTimeout(30); // 设置读取超时时间,单位为秒(默认0秒) httpProfile.setEndpoint("cvm.ap-shanghai.tencentcloudapi.com"); // 指定接入地域域名(默认就近接入) // 实例化一个client选项,可选的,没有特殊需求可以跳过 ClientProfile clientProfile = new ClientProfile(); clientProfile.setSignMethod("HmacSHA256"); // 指定签名算法(默认为HmacSHA256) // 自3.1.80版本开始,SDK 支持打印日志。 clientProfile.setHttpProfile(httpProfile); clientProfile.setDebug(true); // 从3.1.16版本开始,支持设置公共参数 Language, 默认不传,选择(ZH_CN or EN_US) clientProfile.setLanguage(Language.EN_US); // 实例化要请求产品(以cvm为例)的client对象,clientProfile是可选的 CvmClient client = new CvmClient(cred, "ap-shanghai", clientProfile); // 实例化一个cvm实例信息查询请求对象,每个接口都会对应一个request对象。 DescribeInstancesRequest req = new DescribeInstancesRequest(); // 填充请求参数,这里request对象的成员变量即对应接口的入参 // 你可以通过官网接口文档或跳转到request对象的定义处查看请求参数的定义 Filter respFilter = new Filter(); // 创建Filter对象, 以zone的维度来查询cvm实例 respFilter.setName("zone"); respFilter.setValues(new String[] { "ap-shanghai-1", "ap-shanghai-2" }); req.setFilters(new Filter[] { respFilter }); // Filters 是成员为Filter对象的列表 // 通过client对象调用DescribeInstances方法发起请求。注意请求方法名与请求对象是对应的 // 返回的resp是一个DescribeInstancesResponse类的实例,与请求对象对应 DescribeInstancesResponse resp = client.DescribeInstances(req); // 输出json格式的字符串回包 System.out.println(DescribeInstancesResponse.toJsonString(resp)); // 也可以取出单个值。 // 你可以通过官网接口文档或跳转到response对象的定义处查看返回字段的定义 System.out.println(resp.getTotalCount()); } catch (TencentCloudSDKException e) { System.out.println(e.toString()); } } }

使用简化版示例代码调用 API 的流程如下(详细版同理):

在安装了腾讯云 Java SDK 的 Java 项目中新建一个文件并将示例代码复制上去,如下图所示:将示例代码中的"secretId", "secretKey"用您真实的密钥进行替换,并选择输入您的服务器所在的地域(region),如下图所示:成功运行代码得到结果运行报错

当"secretId", "secretKey"未用您真实的密钥进行替换时会报错,如下图所示。更多错误码内容请阅览产品文档错误码章节。

更多示例

您可以在github中examples目录下找到更多详细的示例。



【本文地址】


今日新闻


推荐新闻


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