美文网首页三月听我说
用Laravel Sms实现 laravel短信验证码的发送

用Laravel Sms实现 laravel短信验证码的发送

作者: 止喜 | 来源:发表于2018-08-26 17:12 被阅读42次

阿里云短信服务
使用Laravel Sms这个扩展包实现短信验证码的发送,这里以阿里云的短信服务为例:
首先,要创建短信签名和短信模板,具体申请详情如下,

20180124200150292.png 20180124200420098 (1).png

接下来,需要创建AccessKey,由于AccessKey是访问阿里云API的密钥,具有你所登陆的账户完全的权限,为了安全起见,建议使用子用户AccessKey,为其分配一定的权限即可。


20180124200420098.png 20180124201810627 (1).jpg

接下来,在项目根目录执行命令:

 composer require toplan/laravel-sms:~2.6
20180124205031921.png

然后,注册服务提供器:
在config/app.php文件中providers数组里加入:

Toplan\PhpSms\PhpSmsServiceProvider::class,
Toplan\Sms\SmsManagerServiceProvider::class,

在config/app.php文件中的aliases数组里加入

'PhpSms' => Toplan\PhpSms\Facades\Sms::class,
'SmsManager' => Toplan\Sms\Facades\SmsManager::class,

  • 生成配置文件和migration文件
php artisan vendor:publish --provider="Toplan\PhpSms\PhpSmsServiceProvider"
php artisan vendor:publish --provider="Toplan\Sms\SmsManagerServiceProvider"

这里会在config目录下生成两个配置文件,分别为phpsms.php和laravel-sms.php。


20180124205601055.png

接下来,配置参数:
打开phpsms.php,


20180124220145110.png

找到agents数组中你需要的代理器,填好其相应的配置信息,我这里使用的是阿里云的短信服务(不是阿里大鱼)。


20180124221645294.png

imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

accessKeyId 和 accessKeySecret 是你在申请AccessKey时可以获取到的,
signName 是指你申请的短信签名的名称。

打开laravel-sms.php,找到templates数组,

这里对应的是你申请的短信模板的模板CODE。

到这为止,基本的配置就已完成,不再过多叙述。

另附一个封装好的js文件,https://github.com/toplan/laravel-sms/blob/master/js/laravel-sms.js
将laravel-sms.js放入项目中,在需要使用验证码的地方引入该js,

<script src="laravel-sms.js"></script>
20180125103129895.png
<script>
    $('#sendVerifySmsButton').sms({
        //laravel csrf token
        token       : "{{csrf_token()}}",
        //请求间隔时间
        interval    : 60,
        //请求参数
        requestData : {
            //手机号
            mobile : function () {
                return '18*******37';
            },
            //手机号的检测规则
            // mobile_rule : 'mobile_required'
        }
    });
</script>

点击发送按钮,就可以获取到验证码了。

参考链接:https://github.com/toplan/laravel-sms

相关文章

网友评论

本文标题:用Laravel Sms实现 laravel短信验证码的发送

本文链接:https://www.haomeiwen.com/subject/jyboiftx.html