1.在阿里云市场购买短信服务
2.点击购买这里使用0元试用下
3.下拉到最后看使用说明,可以看到这里有两种使用方法
(1)第一种简单身份认证,使用网页提供的示例代码即可,注意选择到java代码,填写自己的appcode和要发送的电话号码,根据代码中提供的注释,在对应github网址下载对应的代码和依赖
代码提示的地址如下:
appcode请在控制台里面查找 云市场-》已购买的服务 来获得
简单的调用方法到此结束
(2)签名认证调用方法:
首先点击api调用下的签名认证方法下图黑色圈里的字
根据网页内容提示下载sdk包并打开压缩包
目录结构如下:
阅读readme.zh 中文文档说明里面大概如下图所示
根据内容提示导入依赖包和依赖类:
2 SDK使用
2.1 环境准备
阿里云API网关Java SDK适用于JDK 1.6及以上版本
您需要准备一对授权密钥供SDK生成鉴权和签名信息,即 AppKey和AppSecret
重要提示:AppKey和AppSecret是网关认证用户请求的密钥,这两个配置如果保存在客户端,请妥善加密。
在pom.xml中添加如下依赖:
com.aliyun.api.gateway
sdk-core-java
1.1.7
com.fasterxml.jackson.core
jackson-databind
2.6.7.5
2.2 引入SDK的API接口调用类
把sdk文件夹中所有Group的通道类HttpApiClient*.java、HttpsApiClient*.java和WebSocketApiClient*.java文件复制到您的项目文件夹中;
修正这些类文件的package;
2.3 初始化通信通道类
要提交请求至阿里云API网关,您首选要将所有的通道类初始化。您可以参考Demo*.java中的示例代码,使用对应的ClientBuilderParams类来初始化所有通道:
这里我们使用demo类中的https方法发送短信
在demo类中找到下面的代码,把他粘贴到你的main函数
//
HTTPS Client init
HttpClientBuilderParams httpsParam = new HttpClientBuilderParams();
//在这两个位置,填写上图的找appcode时候旁边的appkey和appsecret
httpsParam.setAppKey("");
httpsParam.setAppSecret("");
/**
* HTTPS request use DO_NOT_VERIFY mode only for demo
* Suggest verify for security
*/
//httpsParam.setRegistry(getNoVerifyRegistry());
HttpsApiClient短信接口.getInstance().init(httpsParam);
在demo类中找到下面的代码,粘贴到你的main函数中
public static void 短信接口HttpsSyncTest(){
ApiResponse response = HttpsApiClient短信接口.getInstance().短信接口SyncMode("default" , "default" , "default");
try {
System.out.println(getResultString(response));
}catch (Exception ex){
ex.printStackTrace();
}
}
此时运行main函数即可。(里面有的函数找不到的,比如getNoVerifyRegistry,getResultString在demo类里面找到,粘贴过来就可以),注意导的包,和不确定的demo类对比下
main函数示例:
public static void main(String[] args) {
//HTTPS Client init
HttpClientBuilderParams httpsParam = new HttpClientBuilderParams();
httpsParam.setAppKey("");
httpsParam.setAppSecret("");
/**
* HTTPS request use DO_NOT_VERIFY mode only for demo
* Suggest verify for security
*/
//httpsParam.setRegistry(getNoVerifyRegistry());
HttpsApiClient短信接口.getInstance().init(httpsParam);
ApiResponse response = HttpsApiClient短信接口.getInstance().短信接口SyncMode("code:1224" , "TPL_0000" , "你的电话号码");
try {
System.out.println(getResultString(response));
}catch (Exception ex){
ex.printStackTrace();
}
}