PHP群:95885625 Hbuilder+MUI群:81989597 站长QQ:634381967
    您现在的位置: 首页 > 开发编程 > Laravel教程 > 正文

    Laravel5.4使用阿里大于(鱼)短信发送验证码教程

    作者:admin来源:网络浏览:时间:2020-09-30 00:07:50我要评论
    导读:在做用户注册和个人中心的安全管理时,我实现借助第三方短信平台(阿里大于(鱼))在Laravel框架中进行手机验证的设置;阿里大于,是阿里通信旗...
    在做用户注册和个人中心的安全管理时,我实现借助第三方短信平台(阿里大于(鱼))在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 = 'B5教程网';  // 短信签名,可以在阿里大鱼的管理中心看到
        $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"}

    地址:https://github.com/ISCLOUDX/alisms
    转载请注明(B5教程网)原文链接:https://b5.mxunkeji.com/content-153-5885-1.html
    相关热词搜索: