转载请注明出处: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) {
String url="http://gw.api.taobao.com/router/rest";
String appkey="23****68";
String secret="93805f7f0dde6f66c8c216996815112e";
String code="";
Random r = new Random(new Date().getTime());
for(int i=0;i<NUM;i++){
code = code+r.nextInt(10);
}
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();
req.setExtend("");
req.setSmsType("normal");
req.setSmsFreeSignName("***");
req.setSmsParamString(json);
req.setRecNum(mobile);
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
本文源自【大学之旅_谙忆的博客】