利用阿里大于(大鱼)平台进行发送手机验证码

简介: 转载请注明出处:http://blog.csdn.net/qq_26525215本文源自【大学之旅_谙忆的博客】短信验证(注册或改密码等)首先去登录阿里大于: http://www.alidayu.com/没有号的就注册一个!用淘宝就可以登录了,相信一般人都是不需要注册的。

转载请注明出处:http://blog.csdn.net/qq_26525215

本文源自大学之旅_谙忆的博客

短信验证(注册或改密码等)

首先去登录阿里大于: http://www.alidayu.com/

没有号的就注册一个!用淘宝就可以登录了,相信一般人都是不需要注册的。

阿里大于搭建环境几步曲:

1、创建应用:

AppKEY—设置发送参数的时候需要用到

App Secret—设置发送参数的时候需要用到

2、添加签名/模板:

签名名称—设置发送参数的时候需要用到

模板ID—设置发送参数的时候需要用到

3、查看API:

查看阿里大鱼的API文档 http://open.taobao.com/docs/api.htm?spm=a219a.7395905.0.0.AT1UnC&apiId=25450

里面给了几种编程语言的模板。选择自己合适的。
在这里,我只是演示一下Java的。

4、测试或SDK下载:

测试的话,可不用、

SDK下载:

其实相当于JAR包!

开始开发(Java)

发送手机验证码实现模板

import java.util.Date;
import java.util.Random;

import javax.servlet.http.HttpServletRequest;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

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;

/**
 * 短信验证---阿里大于工具
 */
@Controller
@RequestMapping("/message")
public class MessageController {
    private final Integer NUM=6; 
    private Logger log = Logger.getLogger(MessageController.class);

    @RequestMapping(value = { "/send" })
    public void sendMessage2(String mobile,HttpServletRequest request) {
        //官网的URL---必须是这个
        String url="http://gw.api.taobao.com/router/rest"; 

        //成为开发者,创建应用后系统会自动生成--前面图片中有说明
        String appkey="23****68"; 

        //创建应用后系统会自动生成--前面图片中有说明
        String secret="93805f7f0dde6f66c8c216996815112e";

        //随机生成 num 位验证码
        String code="";
        Random r = new Random(new Date().getTime());
        for(int i=0;i<NUM;i++){
            code = code+r.nextInt(10);
        }
        //需要log4j的Jar包--日志-可删
        log.info("手机号为:"+mobile+",验证码为:"+code);

        //将验证码加入容器中---用户输入验证码之后验证
        request.getSession().setAttribute("messageCode", code);

        //短信模板的内容
        String json="{\"code\":\""+code+"\",\"sitename\":\"**网\"}";

        TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);

        AlibabaAliqinFcSmsNumSendRequest req = new AlibabaAliqinFcSmsNumSendRequest();
        //公共回传参数,在“消息返回”中会透传回该参数;
        //举例:用户可以传入自己下级的会员ID,在消息返回时,该会员ID会包含在内,用户可以根据该会员ID识别是哪位会员使用了你的应用

        req.setExtend("");  
        //短信类型,传入值请填写normal
        req.setSmsType("normal");

        //签名名称
        req.setSmsFreeSignName("***");

        //短信模板变量,传参规则{"key":"value"},key的名字须和申请模板中的变量名一致,多个变量之间以逗号隔开。
        req.setSmsParamString(json);

        //短信接收号码
        req.setRecNum(mobile);

        //短信模板ID
        req.setSmsTemplateCode("SMS_14970456");
        AlibabaAliqinFcSmsNumSendResponse rsp = null;
        try {
            rsp = client.execute(req);
        } catch (ApiException e) {
            e.printStackTrace();
        }

        log.debug(rsp.getBody());

    }

}

如果出错,请自己根据大于返回的错误信息调试代码。
错误信息可以进入下面链接查看错误码解释:
http://open.taobao.com/docs/api.htm?spm=a219a.7395905.0.0.AT1UnC&apiId=25450

本例,我已通过浏览器输入地址访问本Controller/Servlet的这个方法,成功给自己的手机号码发送短信。

注意哦,不是免费的,价格如下:

本文章由[谙忆]编写, 所有权利保留。

转载请注明出处:http://blog.csdn.net/qq_26525215

本文源自大学之旅_谙忆的博客

目录
相关文章
|
2月前
|
缓存 Kubernetes 网络协议
阿里云DNS常见问题之在手机上使用阿里的私人dns失败如何解决
阿里云DNS(Domain Name System)服务是一个高可用和可扩展的云端DNS服务,用于将域名转换为IP地址,从而让用户能够通过域名访问云端资源。以下是一些关于阿里云DNS服务的常见问题合集:
|
2月前
|
运维 监控 开发工具
应用研发平台EMAS产品常见问题之华为手机没收到通知如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
|
2月前
|
网络协议 JavaScript 前端开发
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名2
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名
1015 0
|
2月前
|
网络协议 JavaScript 前端开发
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名1
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名
264 0
|
1月前
|
缓存 NoSQL Java
案例 采用Springboot默认的缓存方案Simple在三层架构中完成一个手机验证码生成校验的程序
案例 采用Springboot默认的缓存方案Simple在三层架构中完成一个手机验证码生成校验的程序
68 5
|
15天前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的二手手机交易平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的二手手机交易平台附带文章源码部署视频讲解等
14 0
|
1月前
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的二手手机交易平台附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的二手手机交易平台附带文章和源代码部署视频讲解等
31 7
|
1月前
|
Java 关系型数据库 MySQL
基于Java的二手手机回收平台系统
基于Java的二手手机回收平台系统
|
1月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue的二手手机交易平台的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue的二手手机交易平台的详细设计和实现(源码+lw+部署文档+讲解等)
20 0
|
2月前
|
JavaScript 前端开发 网络协议
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名3
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名
229 0

热门文章

最新文章