Laravel5中使用阿里大于(鱼)发送短信验证码


Laravel5中使用阿里大于(鱼)发送短信验证码

发布时间:2017-06-02 

在做用户注册和个人中心的安全管理时,我实现借助第三方短信平台(阿里大于(鱼))在Laravel框架中进行手机验证的设置;阿里大于,是阿里通信旗下优质便捷的云通信服务平台,整合了三大运营商的通信能力,为开发者提供简洁易用的短信/语音API,三网合一通道,按需付费。
阿里大于(鱼)发送短信验证码

安装laravel阿里大于(鱼)服务

composer require iscms/alisms-for-laravel

注册服务(config/app.php)

在文件中找到Providers数组,写入

iscms/Alisms/AlidayuServiceProvider::class

生成阿里大于(鱼)配置文件(config文件夹)

php artisan vendor:publish

修改阿里大于(鱼)配置文件(alisms.php)文件为:

<?php
  return [ 
      'KEY' =>env('ALISMS_KEY',null),
      'SECRETKEY'=>env('ALISMS_SECRETKEY',null)
  ];

laravel根目录下找到.env文件,把阿里大鱼的App key和配置成全局变量(http://www.alidayu.com/)

ALISMS_KEY=234*****3
ALISMS_SECRETKEY=****************

在您需要调用短信服务的控制器中,引用SMS

 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/)

 模板名称: 身份验证
 模板ID: SMS_39***4
 *模板内容:验证码${code},您正在进行个人身份验证,打死不要告诉别人哦!

那么里面存在着变量${code}需要替换成验证码,那么对应的$content 就应该为{code:"生成的验证码,如:123456"}

Laravel5阿里大鱼短信接口

到这里Laravel5使用阿里大于(鱼)发送短信验证码应该没有问题了,开始发送短信吧~ ^_^
alisms-for-laravel:https://packagist.org/packages/iscms/alisms-for-laravel

出处:小张个人博客 http://023xs.cn/Article/69

 

您的支持是对博主最大的鼓励,感谢您的认真阅读。欢迎转载,但请保留该声明。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM