Laravel5中使用阿里大于(鱼)发送短信验证码
在做用户注册和个人中心的安全管理时,我实现借助第三方短信平台(阿里大于(鱼))在Laravel框架中进行手机验证的设置;阿里大于,是阿里通信旗下优质便捷的云通信服务平台,整合了三大运营商的通信能力,为开发者提供简洁易用的短信/语音API,三网合一通道,按需付费。
安装laravel阿里大于(鱼)服务
|
1
|
composer require iscms/alisms-for-laravel |
注册服务(config/app.php)
在文件中找到Providers数组,写入
|
1
|
iscms/Alisms/AlidayuServiceProvider::class |
生成阿里大于(鱼)配置文件(config文件夹)
|
1
|
php artisan vendor:publish |
修改阿里大于(鱼)配置文件(alisms.php)文件为:
|
1
2
3
4
5
|
<?php return [ 'KEY' =>env('ALISMS_KEY',null), 'SECRETKEY'=>env('ALISMS_SECRETKEY',null) ]; |
laravel根目录下找到.env文件,把阿里大鱼的App key和配置成全局变量(http://www.alidayu.com/)
|
1
2
|
ALISMS_KEY=234*****3ALISMS_SECRETKEY=**************** |
在您需要调用短信服务的控制器中,引用SMS
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
use iscms\Alisms\SendsmsPusher as Sms; public function __construct(Sms $sms) { $this->sms=$sms; } public function Alidayu(Request $request){ $phone = $request ->input('phone','1508*****55'); // 用户手机号,接收验证码 $name = '小张个人博客'; // 短信签名,可以在阿里大鱼的管理中心看到 $num = rand(100000, 999999); // 生成随机验证码 $smsParams = [ 'number' => "$num" ]; $content = json_encode($smsParams); // 转换成json格式的 $code = "SMS_63****73"; // 阿里大于(鱼)短信模板ID $request ->session()->put('alidayu',$num); // 存入session 后面做数据验证 $result=$this->sms->send($phone,$name,$content,$code); echo "验证码:".session('alidayu').'<br/>'; if(property_exists($request,'result')){ // 使用PHP函数json_encode方法将给定数组转化为JSON: return json_encode(['ResultData' => '成功', 'info' => '已发送']); }else{ return json_encode(['ResultData' => '失败', 'info' => '重复发送']); } |
参数说明:
$phone 手机号,用户输入的手机号
$name 短信签名,阿里大鱼申请的短信签名的名字
$content 替换短信模板中的变量,JSON字符串格式,所有值都是字符串,不能有整形
$code 阿里大鱼申请的短信模ID:SMS_39***4
阿里大于(鱼)短信模板(http://www.alidayu.com/)
|
1
2
3
|
模板名称: 身份验证 模板ID: SMS_39***4 *模板内容:验证码${code},您正在进行个人身份验证,打死不要告诉别人哦! |
那么里面存在着变量${code}需要替换成验证码,那么对应的$content 就应该为{code:"生成的验证码,如:123456"}
到这里Laravel5使用阿里大于(鱼)发送短信验证码应该没有问题了,开始发送短信吧~ ^_^
alisms-for-laravel:https://packagist.org/packages/iscms/alisms-for-laravel
Laravel5中使用阿里大于(鱼)发送短信验证码的更多相关文章
- 一百一十六:CMS系统之使用阿里大于sdk发送短信验证码
阿里大于短信平台:https://dysms.console.aliyun.com/dysms.htm#/overview 使用教程:https://blog.csdn.net/qq103189393 ...
- 使用阿里大于平台发送短信验证码java代码实现
待续..网站app后台还未完成,不能添加签名,短信不能正常发送. Tip: https://help.aliyun.com/document_detail/55284.html?spm=5176.sm ...
- 利用阿里大于实现发送短信(JAVA版)
本文是我自己的亲身实践得来,喜欢的朋 友别忘了点个赞哦! 最近整理了一下利用阿里大于短信平台来实现发送短信功能. 闲话不多说,直接开始吧. 首先,要明白利用大于发送短信这件事是由两部分组成: 一.在阿 ...
- 利用阿里大于接口发短信(Delphi版)
阿里大于是阿里通信旗下产品,融合了三大运营商的通信能力,提供包括短信.语音.流量直充.私密专线.店铺手机号等个性化服务.每条四分五,价钱还算公道,经老农测试,响应速度非常快,基本上是秒到.官方文档提供 ...
- java 阿里云接口实现发送短信验证码
此刻自己做的小项目中,需要用到手机发送短信验证码实现注册功能,于是就去阿里云注册了账号,并实现随机发送验证码的功能 第一步:在阿里云官网登录注册 已有支付宝或淘宝的账号可以直接登录,最后需要实名认 ...
- 阿里云短信服务发送短信验证码(JAVA开发此功能)
开发此功能需注册阿里云账号,并开通短信服务(免费开通) 充值后,不会影响业务的正常使用!(因为发送验证类短信:1-10万范围的短信是0.045元/条).开发测试使用,充2块钱测试足够了 可参考阿里云官 ...
- android发送短信验证码并自动获取验证码填充文本框
android注册发送短信验证码并自动获取短信,截取数字验证码填充文本框. 一.接入短信平台 首先需要选择短信平台接入,这里使用的是榛子云短信平台(http://smsow.zhenzikj.com) ...
- java + maven 实现发送短信验证码功能
如何使用java + maven的项目环境发送短信验证码,本文使用的是榛子云短信 的接口. 1. 安装sdk 下载地址: http://smsow.zhenzikj.com/doc/sdk.html ...
- Java 实现手机发送短信验证码
Java 实现手机发送短信验证码 采用引入第三方工具的方式,网上查了半天,发现简单的实现方式便是注册一个中国网建的账号,新建账号的时候会附带赠几条免费短信,彩信 ,之后想要在使用就得花钱了.简单的操作 ...
随机推荐
- JMeter 插件管理
JMeter管理的插件包括了jmeter-plugins.org上常用的插件以及各种第三方插件和JMeter核心插件. JMeter插件管理器主要管理插件安装,卸载,升级等操作. 安装插件管理 1.下 ...
- 修改placeholder的样式
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: #666; } input:-moz-pl ...
- webpack配置报错:invalid configuration object.webpack has been initialisted using a configuration objcet that does not match thie API schema
最近接收了别人的项目,webpack配置总是报错如下:最后找到了解决办法,在此分享一下: 错误情况: 解决办法: 将package.json里面的colors删除掉即可
- oracle里的优化器
1.1 oracle里的优化器 RBO(Rule-Based-Optinizer):基于规则的优化器 CBO(Cost-Based-Optinizer): 基于成本的优化器 SQL语句执行过程 待执行 ...
- springBoot系列教程06:参数验证及验证信息国际化
在springboot应用中要验证参数是否正确很简单,web应用已经包含了validation的 1.定义需要被验证的参数实体,并用注解标明错误类别和错误信息 package com.xiao.dom ...
- Oracle死锁情况
ORACLE EBS操作某一个FORM界面,或者后台数据库操作某一个表时发现一直出于"假死"状态,可能是该表被某一用户锁定,导致其他用户无法继续操作 复制代码 代码如下: --锁表 ...
- 20 Zabbix系统性能优化建议
点击返回:自学Zabbix之路 20 Zabbix系统性能优化建议 1. Zabbix性能变慢的可能表现: zabbix队列有太多被延迟的item,可以通过administration-queue查看 ...
- 最新版solr7.2集群搭建详细步骤
集群:高可用,备份,数据可分片 需要运行4个tomcat 1.tomcat端口号(默认占用8005,8009,8080三个端口) tomcat服务 占用端口 tomcat1 6005.6060.600 ...
- swift中的AnyHashable
AnyHashable是调和objc和Swift的产物 典型的场景是,objc下无泛型的NSDictionary到了Swift下,会变成什么?(典型例子是苹果来的推送消息) [Any: Any],这肯 ...
- IIS 应用程序池自动停止
IIS7 .NET Runtime version 2.0.50727.5420 - 执行引擎错误(000007FEE77AAF0E) (80131506) 装完系统,配置完IIS,发现.NET程序报 ...