TP3.2 配置最新的阿里大于sdk
TP3.2 配置最新的阿里大于sdk
最近公司买了阿里云的阿里大于短信验证 ,这里记录下本人接入短信验证的过程和心得。
大家是不是一开始都是和本人一样直接去百度下怎么有没有现成的demo 或者是封装好了的类库
就像是 :http://www.thinkphp.cn/topic/46029.html
但是兴高采烈的接入好了 , 最后会发现 ISV 什么开发这权限不足 , 其实后台都是好了的 , 根本就不是权限不足, 而是搬家了
以前的接口是有taobao 的,就像https://api.alidayu.com/apitools/apiTools.htm?spm=a3142.7395905.4.29.z1Hkms&catId=20711&apiId=25450&apiName=alibaba.aliqin.fc.sms.num.send&scopeId=#
没错这个是过期了的 但是官方并没有说明这种情况,这就很坑了。
这里作者建议 大家直接去官方下载最新的sdk:
https://help.aliyun.com/document_detail/55451.html?spm=5176.doc55288.6.556.sIOJUV
下载好了直接配置demo
这里配置
这里务必看清楚,那些参数签名什么的,不然就是各种报错, 你懂的,很难受
如果你的demo 成功的话 那么封装就变得简单了
/*
* 阿里大鱼手机验证码发送函数
*
*
*/ function sendphone($m)
{
Vendor('Alidayu.api_demo.SmsDemo');
header('Content-Type: text/plain; charset=utf-8');
$demo = new \SmsDemo(
C('Alidayu.Appkey'),
C('Alidayu.SecretKey')
); // echo "SmsDemo::sendSms\n";
$randStr = str_shuffle('1234567890');
$code = substr($randStr,0,4);
$_SESSION['sendphonecode']=$code;
$_SESSION['expire']=1800;
$response = $demo->sendSms(
C('Alidayu.SignName'), // 短信签名
C('Alidayu.SmsTemplate'), // 短信模板编号
$m, // 短信接收者
Array( // 短信模板中字段的值
"code"=> $code,
"product"=>"dsd"
),
"666"
);
// echo "SmsDemo::queryDetails\n";
$response = $demo->queryDetails(
"1234567890", // phoneNumbers 电话号码
date('Ymd',time()), // sendDate 发送时间
10, // pageSize 分页大小
1, // currentPage 当前页码
"abcd" // bizId 短信发送流水号,选填
); return $code;
}
下面的参数
$demo->queryDetails
具体怎么使用 , 我也是不清楚的,如果有知道的可以告诉下,谢谢。
到在下一步就是获取和验证了
/*
* 发送验证码
* @param mobile purpose 手机号 状态
* @return 0 1
*
*/
public function setphone()
{
$mobile = '15779675455';
// $mobile = I('post.mobile');
// $purpose = I('post.purpose');
$purpose = '1';
if(isset($mobile) && empty($mobile)){
error_r('手机号码不能为空!');
}
if(isset($purpose) && empty($purpose)){
error_r('验证类型不能为空!');
}
$a = sendphone( $mobile );
$yn = (empty($a))? '0' : '1' ;
$data = array(
'phone'=>$mobile,
'purpose'=>$purpose,
'status'=>$yn,
'add_time'=>time(),
'time_date'=>date('Y-m-d',time())
);
M('phonecode')->add($data);
if(empty($a)){
error_r('发送失败');
}else{
success_s('发送成功');
}
} /*
* 验证验证码是否正确
* @param mobile 手机号
* @return 0 1
*
*/
public function thancode()
{
$phone = I('post.phone');
$a = $_SESSION['sendphonecode'];
if($phone == $a)
{
success_s('验证码正确');
}else{
error_r('验证码错误');
}
}
到了这里这功能就基本封装了好
TP3.2 配置最新的阿里大于sdk的更多相关文章
- 一百一十六:CMS系统之使用阿里大于sdk发送短信验证码
阿里大于短信平台:https://dysms.console.aliyun.com/dysms.htm#/overview 使用教程:https://blog.csdn.net/qq103189393 ...
- Python2-Django配置阿里大于的短信验证码接口
1.短信发送开发指南地址:https://help.aliyun.com/document_detail/55491.html?spm=a2c4g.11186623.6.568.l5zTwH 2.SD ...
- .NET Core阿里大于短信发送SDK修改以及使用
一.问题背景 继上次七牛云SDK的问题之后(参考:http://www.cnblogs.com/OMango/p/8447480.html),在发送短信的功能上又出现了问题,我们短信服务使用的是阿里大 ...
- asp.net mvc短信接口调用——阿里大于API开发心得
互联网上有许多公司提供短信接口服务,诸如网易云信.阿里大于等等.我在自己项目里需要使用到短信服务起到通知作用,实际开发周期三天,完成配置.开发和使用,总的说,阿里大于提供的接口易于开发,非常的方便,短 ...
- 阿里大于验证码发送 (ThinkPhp框架)
1.登录平台 阿里大于2.登陆之后我们可以看到资费,使用场景等,在进入正题之前我们需要一些准备工作,首先我们先了解下短信的请求参数,在这里我们需要注意的是sms_param这个参数,在接下来我们申请短 ...
- Thinkphp5使用阿里大于短信验证
现在各种平台登录验证很多时候会使用短信验证,快捷安全,有很多平台提供短信验证服务,相比较而言阿里大于价格比较便宜,快捷,所以在在千锋日常的php教学中多以此为例来说明短信验证的使用.下面我们在tp5中 ...
- laravel+阿里大于实现发送验证码短信
一.短信服务使用阿里大于提供的短信接口 阿里大于官方网站上的接入流程: 在阿里大于申请接口后,需要做以下操作: 申请签名 申请短信模板 创建Accesskey,可以通过权限最大的Accesskey创建 ...
- 利用阿里大于实现发送短信(JAVA版)
本文是我自己的亲身实践得来,喜欢的朋 友别忘了点个赞哦! 最近整理了一下利用阿里大于短信平台来实现发送短信功能. 闲话不多说,直接开始吧. 首先,要明白利用大于发送短信这件事是由两部分组成: 一.在阿 ...
- 基于ThinkPHP与阿里大于的PHP短信验证功能
https://blog.csdn.net/s371795639/article/details/53381274 PHP阿里大鱼短信验证 第一步 登陆阿里大于注册账号,在用户管理中心创建应用,确定A ...
随机推荐
- iOS-Core-Animation-Advanced-Techniques(一)
视图(UIView)和图层(CALayer)的关系: 每一个UIview都有一个CALayer实例的图层属性,视图的职责就是创建并管理这个图层,以确保当子视图在层级关系中添加或者被移除的时候,他们关联 ...
- Example006为弹出窗口加入关闭按钮
<!-- 实例006为弹出的窗口加入关闭按钮 --> <head> <meta charset="UTF-8"> </head> & ...
- Openfire开发广播服务接口,支持离线广播消息
Openfire开发广播服务接口,支持离线广播消息 概要 最近公司要求做一个web端向所有移动端发送公告,所以考虑到即时性就用openfire做服务.不过为了减轻web端的工作量,我们开发一个简单的插 ...
- Spring Security -SpEL表达式
Spring Security -SpEL表达式 开启SpEL表达式 <!-- use-expressions是否开启 SpEL表达式 o.s.s.web.access.expression.W ...
- Server from URL
在你做网页时,如果网页需要运行ActiveX或脚本,并且他们位于客户端以外的地方, 那么可以添加这个注释语句,IE当然不会不理他, IE会按照他指出的URL去找脚本的位置. 这句话的作用是让Inter ...
- vijos1022题解
Victoria是一位颇有成就的艺术家,他因油画作品<我爱北京天安门>闻名于世界.现在,他为了报答帮助他的同行们,准备开一个舞会. Victoria准备邀请n个已经确定的人,可是问题来了: ...
- Netty ByteBuf源码分析
Netty的ByteBuf是JDK中ByteBuffer的升级版,提供了NIO buffer和byte数组的抽象视图. ByteBuf的主要类集成关系: (图片来自Netty权威指南,图中有一个画错的 ...
- SQL语言-----数据操作
数据操作 增加数据,insert into 标准格式 insert into 表名 (字段的列表)value(数据列表): 使用set insert into 表名 set 字段1=值,2.....: ...
- cobbler简介+安装
(介绍部分的内容部分是借鉴网上的非原创) 回顾pxe+kickstart PXE PXE(preboot execute environment,预启动执行环境) PXE启动原理: 当计 ...
- list-列表功能介绍
叨逼叨:列表是可变的,针对列表的改变,变得是列表本身,和字符串区别开来 #1.追加 # name = ['alex','eric','seven','qiqi'] # v = name.append( ...