博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
阿里大于 发短信 方法 Spring boot 实现
阅读量:5921 次
发布时间:2019-06-19

本文共 3130 字,大约阅读时间需要 10 分钟。

hot3.png

前提条件

  • 注册阿里大于(原名阿里大鱼),注册地址如下 

  • 登录后前往应用管理 >> 应用列表 >> 创建你的应用 

    这里写图片描述

  • 创建好应用之后点击设置按钮进入设置页面找到你的appkey 和 appSecret 

    这里写图片描述

  • 进入配置管理 >>验证码 

    配置好短信签名和短信模板,这个需要审核,请等待审核通过。 
    请记录好配置的签名名称,我这里举个例子是 “个人” 
    这里写图片描述 
    点击配置短信模板申请模板并等待审核,审核通过后请记录好模板ID 
    这里写图片描述
    至此阿里大于服务器端配置完成。

下面开始代码上的准备

1.java sdk下载,到官网下载即可

 

2.把下载的jar包 安装到 maven仓库

174658_9I8b_2913805.png

我是安装到E盘,这个看自己

mvn install:install-file -Dfile=E:\taobao-sdk-java-auto_1455552377940-20160607.jar -DgroupId=com.taobao -DartifactId=taobao-api -Dversion=1.0.0.RELEASE -Dpackaging=jar

 

3.配置pom文件

<!-- 阿里短信 -->

        <dependency>
            <groupId>com.taobao</groupId>
            <artifactId>taobao-api</artifactId>
            <version>1.0.0.RELEASE</version>
        </dependency>

 

最后看代码

package com.app.test;

import com.taobao.api.ApiException;

import com.taobao.api.DefaultTaobaoClient;
import com.taobao.api.TaobaoClient;
import com.taobao.api.request.AlibabaAliqinFcSmsNumSendRequest;
import com.taobao.api.response.AlibabaAliqinFcSmsNumSendResponse;

public class SendMsgDemo {

    
     /** 短信接口的请求地址---正式环境 */  
    public static final String SMS_REQUEST_URL = "https://eco.taobao.com/router/rest";
    //沙箱环境     https://gw.api.tbsandbox.com/router/rest
  
    /** ################# 需要根据情况填写下面的属性 #################### */  
    /** 应用的Key */  
    private static final String APP_KEY = " ";  
    /**  应用的签名 */  
    private static final String APP_SECRET = " ";  
    /** 短信签名 */  
    private static final String SMS_FREE_SIGN_NAME = "身份验证";  
    /** 短信模板ID ---身份验证 */  
    private static final String SMS_TEMPLATE_CODE = "SMS_59905131";
    
    public static void main(String[] args) throws ApiException {
        
        String phone = "15139911765";
        String code = "8888";
        
        sendMsg(phone,code);
    }
    
        
    public static Boolean sendMsg(String phone,String code) {
        
        /**  
         * 创建淘宝客户端 参数一:请求URL(短信接口的请求地址) 参数二:应用的Key 参数三:应用的签名  
         * 方法里面的参数用常量定义。可以随时改  
         */ 
        TaobaoClient client = new DefaultTaobaoClient(SMS_REQUEST_URL, APP_KEY, APP_SECRET); 
        
         /** 构建短信发送请求对象 */ 
        AlibabaAliqinFcSmsNumSendRequest req = new AlibabaAliqinFcSmsNumSendRequest();
        
         /** ######################### 封装请求参数  ############################ */  
        /**  
         * 公共回传参数,在“消息返回”中会透传回该参数;举例:用户可以传入自己下级的会员ID,  
         * 在消息返回时,该会员ID会包含在内,用户可以根据该会员ID识别是哪位会员使用了你的应用 (可选)  
         */  
        req.setExtend("雅鑫-成功传来消息");  
        /**  
         * 短信类型,传入值请填写normal (必须)  
         */  
        req.setSmsType("normal");  
        
        /**  
         * 短信模板ID,传入的模板必须是在阿里大于“管理中心-短信模板管理”中的可用模板。 示例:SMS_59905131 (必须)  
         */  
        req.setSmsTemplateCode(SMS_TEMPLATE_CODE);  
        /**  
         * 短信模板变量,传参规则{"key":"value"},key的名字须和申请模板中的变量名一致,多个变量之间以逗号隔开。  
         * 示例:针对模板“验证码${code},您正在进行${product}身份验证,打死不要告诉别人哦!”,  
         * 传参时需传入{"code":"1234","product":"alidayu"}  
         * 验证码${number},您正进行身份验证,打死不告诉别人! (可选)  
         */  
        req.setSmsParamString("{\"code\":\"" + code + "\",\"product\":\"张雅鑫\"}"); 
        
        req.setRecNum(phone);
        
        /**  
         * 短信签名,传入的短信签名必须是在阿里大于“管理中心-短信签名管理”中的可用签名。  
         * 如“阿里大于”已在短信签名管理中通过审核,则可传入”阿里大于“(传参时去掉引号)作为短信签名。  
         * 短信效果示例:【阿里大于】欢迎使用阿里大于服务。 (必须)  
         */  
        req.setSmsFreeSignName(SMS_FREE_SIGN_NAME); 
        
        
        try {
            AlibabaAliqinFcSmsNumSendResponse rsp = client.execute(req);
            
            System.out.println(rsp.getBody());
            //短信发送成功        Success = true
            System.out.println(rsp.getResult().getSuccess());
            
            //短信发送成功        ErrCode = 0
            System.out.println(rsp.getResult().getErrCode());
            
            //返回
            return rsp.getResult().getSuccess();
            
        } catch (ApiException e) {
            e.printStackTrace();
        }
        return null;
    }
}
 

手机号和验证码两个参数 到时候自己传,操作数据库的就不说了...

转载于:https://my.oschina.net/zhangyaxin/blog/877098

你可能感兴趣的文章
nginx配置
查看>>
Redis配置不当致使root被提权漏洞
查看>>
ubutu14.04无法使用sudo,也无法切换到root用户去解决问题怎么办?
查看>>
使用 NuGet 管理项目库
查看>>
004-Maven的安装与配置
查看>>
C# 插入、删除Excel分页符
查看>>
RTMP、RTSP、HTTP视频协议详解(附:直播流地址、播放软件)
查看>>
laravel构造函数和中间件执行顺序问题
查看>>
Megcup2017 Dogfood
查看>>
PowerDesigner关系线显示名称
查看>>
商品详情页系统的Servlet3异步化实践
查看>>
eclipse web项目的发布路径
查看>>
月晕而风,础润而雨
查看>>
Linux创建和挂载XFS文件系统测试实践
查看>>
Android studio3.1.3 打包jar,混淆
查看>>
潜移默化学会WPF(转载篇)--屏幕显示Label,鼠标移上去变成textBox
查看>>
Python打包-Pyinstaller
查看>>
pm2按日期切割日志
查看>>
MQTT 学习笔记
查看>>
ant font 本地化
查看>>