文档章节

短信验证码

郭周园
 郭周园
发布于 2017/08/23 10:27
字数 464
阅读 5
收藏 0

将类包SendTemplateSMS.php文件内容粘贴进Common/Common下的function,并进行修改:

 

function sendSms($to,$datas,$tempId='1'){

// 初始化REST SDK

global $accountSid, $accountToken, $appId, $serverIP, $serverPort, $softVersion;

include_once("./ThinkPHP/Library/Vendor/Sms/CCPRestSmsSDK.php");

//主帐号,对应开官网发者主账号下的 ACCOUNT SID

$accountSid = C('ACCOUNT_SID');

//主帐号令牌,对应官网开发者主账号下的 AUTH TOKEN

$accountToken = C('AUTH_TOKEN');

//应用Id,在官网应用列表中点击应用,对应应用详情中的APP ID

//在开发调试的时候,可以使用官网自动为您分配的测试Demo的APP ID

$appId = C('APP_ID');

//请求地址

//沙盒环境(用于应用开发调试):sandboxapp.cloopen.com

//生产环境(用户应用上线使用):app.cloopen.com

$serverIP = 'app.cloopen.com';

//请求端口,生产环境和沙盒环境一致

$serverPort = '8883';

//REST版本号,在官网文档REST介绍中获得。

$softVersion = '2013-12-26';

$rest = new REST($serverIP, $serverPort, $softVersion);

$rest->setAccount($accountSid, $accountToken);

$rest->setAppId($appId);

/ 发送模板短信

//echo "Sending TemplateSMS to $to <br/>";

$result = $rest->sendTemplateSMS($to, $datas, $tempId);

if ($result == null) {

//echo "result error!";

//break;

return false;

}

if ($result->statusCode != 0) {

//echo "error code :" . $result->statusCode . "<br>";

//echo "error msg :" . $result->statusMsg . "<br>";

//TODO 添加错误处理逻辑

return false;

} else {

//echo "Sendind TemplateSMS success!<br/>";

// 获取返回信息

//$smsmessage = $result->TemplateSMS;

//echo "dateCreated:".$smsmessage->dateCreated."<br/>";

//echo "smsMessageSid:".$smsmessage->smsMessageSid."<br/>";

//TODO 添加成功处理逻辑

return true;

}

 

对应按钮绑定事件,实现AJAX无刷新获取:

AJAX获取对应标签的手机号,并调用UserController控制器下的短信发送sendCont方法,将手机号传递过去,设定短信验证码,有效时长,当前时间,并存储进session以便调用redist方法的时候验证,调用function下的短信发送函数发送短信,返回成功与否的状态给HTML上的AJAX。

注册提交,先验证短信验证码是否过期,再验证短信是否正确,都正确后进行下一步

 

© 著作权归作者所有

上一篇: redis问题
下一篇: CURL
郭周园
粉丝 3
博文 108
码字总数 15536
作品 0
成都
后端工程师
私信 提问
Web安全指南 | 八招应对短信验证码攻击

如今,大量的网站、网站、手机app都在使用短信验证码作为验证用户身份的安全技术措施。尤其在年底,企业的促销、抽奖、互动活动会迎来一个高峰期,用到短信验证码的场景非常频繁。 但近期,阿...

正禾
2018/03/12
0
0
短信验证码和通知库发布2.0版本,新增通道支持

短信验证码和通知 当前提供的功能如下: 1、短信验证码过期机制 2、短信验证码发送次数限制 3、短信验证码发送频繁后触发图形验证码验证机制 4、短信验证码重试时间间隔限制 5、根据业务标志...

lxitgto
2018/08/17
1
0
发送短信验证码和邮箱验证码—Java实现

短信验证码 短信验证码都是调用一些接口来进行短信的发送,短信验证码在登录、注册等操作中使用的最广泛,本文这一节演示如何使用Java制作一个简单的短信验证码登录。 我这里演示使用的是聚合...

ZeroOne01
2017/11/21
0
0
手机app有了短信验证码还有没必要有图片验证码?

当然有必要,这里我们来聊一个恶意短信验证的案例,通过这个案例我们就能更好理解短信验证码和图片验证码这两者的关系了。 讨论防止恶意短信验证之前,我们先来看看什么是恶意短信验证及出现...

网易云
01/08
0
0
android发送短信验证码并自动获取验证码填充文本框

android注册发送短信验证码并自动获取短信,截取数字验证码填充文本框。 一.接入短信平台 首先需要选择短信平台接入,这里使用的是榛子云短信平台(http://smsow.zhenzikj.com), 两分钟申请测...

zuolz1985
2018/07/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring使用ThreadPoolTaskExecutor自定义线程池及实现异步调用

多线程一直是工作或面试过程中的高频知识点,今天给大家分享一下使用 ThreadPoolTaskExecutor 来自定义线程池和实现异步调用多线程。 一、ThreadPoolTaskExecutor 本文采用 Executors 的工厂...

CREATE_17
今天
6
0
CSS盒子模型

CSS盒子模型 组成: content --> padding --> border --> margin 像现实生活中的快递: 物品 --> 填充物 --> 包装盒 --> 盒子与盒子之间的间距 content :width、height组成的 内容区域 padd......

studywin
今天
7
0
修复Win10下开始菜单、设置等系统软件无法打开的问题

因为各种各样的原因导致系统文件丢失、损坏、被修改,而造成win10的开始菜单、设置等系统软件无法打开的情况,可以尝试如下方法解决 此方法只在部分情况下有效,但值得一试 用Windows键+R打开...

locbytes
昨天
8
0
jquery 添加和删除节点

本文转载于:专业的前端网站➺jquery 添加和删除节点 // 增加一个三和一节点function addPanel() { // var newPanel = $('.my-panel').clone(true) var newPanel = $(".triple-panel-con......

前端老手
昨天
8
0
一、Django基础

一、web框架分类和wsgiref模块使用介绍 web框架的本质 socket服务端 与 浏览器的通信 socket服务端功能划分: 负责与浏览器收发消息(socket通信) --> wsgiref/uWsgi/gunicorn... 根据用户访问...

ZeroBit
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部