https://blog.csdn.net/qq_38125058/article/details/79156289javascript
使用Laravel Sms这个扩展包实现短信验证码的发送,这里以阿里云的短信服务为例:
首先,要建立短信签名和短信模板,具体申请详情以下,php
接下来,须要建立AccessKey,因为AccessKey是访问阿里云API的密钥,具备你所登录的帐户彻底的权限,为了安全起见,建议使用子用户AccessKey,为其分配必定的权限便可。
java
接下来,在项目根目录执行命令:laravel
composer require toplan/laravel-sms:~2.6
而后,注册服务提供器:
在config/app.php文件中providers数组里加入:git
Toplan\PhpSms\PhpSmsServiceProvider::class, Toplan\Sms\SmsManagerServiceProvider::class,
在config/app.php文件中的aliases数组里加入github
'PhpSms' => Toplan\PhpSms\Facades\Sms::class, 'SmsManager' => Toplan\Sms\Facades\SmsManager::class,
php artisan vendor:publish --provider="Toplan\PhpSms\PhpSmsServiceProvider" php artisan vendor:publish --provider="Toplan\Sms\SmsManagerServiceProvider"
这里会在config目录下生成两个配置文件,分别为phpsms.php和laravel-sms.php。
数组
接下来,配置参数:
打开phpsms.php,
找到agents数组中你须要的代理器,填好其相应的配置信息,我这里使用的是阿里云的短信服务(不是阿里大鱼)。
安全
accessKeyId 和 accessKeySecret 是你在申请AccessKey时能够获取到的,
signName 是指你申请的短信签名的名称。app
打开laravel-sms.php,找到templates数组,
composer
这里对应的是你申请的短信模板的模板CODE。
到这为止,基本的配置就已完成,再也不过多叙述。
另附一个封装好的js文件,https://github.com/toplan/laravel-sms/blob/master/js/laravel-sms.js
将laravel-sms.js放入项目中,在须要使用验证码的地方引入该js,
<script src="laravel-sms.js"></script>
<script> $('#sendVerifySmsButton').sms({ //laravel csrf token token : "{{csrf_token()}}", //请求间隔时间 interval : 60, //请求参数 requestData : { //手机号 mobile : function () { return '18*******37'; }, //手机号的检测规则 // mobile_rule : 'mobile_required' } }); </script>
点击发送按钮,就能够获取到验证码了。