阿里云活体人脸验证_Laravel对接阿里云SMS发送短信验证码

本案例采用Laravel5.6对接阿里云SMS发送短信验证码,【全干货】,按步骤操作即可完成。

在部署环境之前,我们需要去阿里云平台注册一个账号,个人账号和公司账号都可以,注册完成后,复制access_key和access_secret配置在项目中就完成了项目的基本设置。

一. 新建项目,安装Laravel5.6版本的框架代码

1. 环境配置要求

Laravel 对系统有一些要求,您的服务器满足下面的要求:

  • PHP >= 7.1.3
  • OpenSSL PHP
  • PHP PDO 扩展
  • PHP Mbstring 扩展
  • PHP Tokenizer 扩展
  • PHP XML 扩展
  • PHP Ctype 扩展
  • PHP JSON 扩展

备注:您需要达到以上的配置要求,这个就不具体详细说明,具体看PHP语法

2. 安装Laravel5.6框架

Laravel5.6使用 Composer 来管理项目依赖。因此,在使用 Laravel5.6之前,请确保你的机器已经安装了 Composer

composer -v
363342fd665eeb69150dcb17e5167049.png

// 未安装composer,请参照以下网址安装https://www.phpcomposer.com/

备注:composer具体安装请参照上面链接,按文档安装即可.

下面我们具体安装Larvael5.6框架,在控制窗口输入一下内容(本人windows操作系统),等待安装完成。

composer create-project --prefer-dist laravel/laravel blog

安装完成后执行以下代码,为应用程序设置随机字符串密钥。

php artisan key:generate

在浏览器中输入:http://localhost/blog/public/index.php,看到如下界面就是访问正常了。

c4c08088d3bb825afe58d9e8c15aebdb.png
3. composer.json配置阿里云组件包

在require中添加"mrgoon/aliyun-sms": "dev-master"

“require”: {        “php”: “^7.1.3”,       “fideloper/proxy”: “^4.0”,        “laravel/framework”: “5.8.*”,        “laravel/tinker”: “^1.0”,    "mrgoon/aliyun-sms": "dev-master"}

然后执行命令:

composer updatecomposer dumpautoload
b3cabc95a1df767f8e6feac6caec3848.png

组件下载完成后,如下图:

994ff42eeb9457fcf4fb637e4994cc92.png

里面已经有阿里云的SDK包了,配置文件也生成了。

ec4379e028d304dbedb04a97a76686fd.png

4、开通短信服务

1、登录阿里云网站,点击短信服务,进入开通。

498a2eab573ddab9714103fd7ae416ad.png

2、点击国内消息

90c800e90695859d955870282d73688e.png

3、添加签名

a1fe9348f460237450c7fc4ab3cbe5b4.png

4、添加模板

0ec253aef71dbbe35144fb82e5713245.png
5. 配置阿里云access_key和access_secret配置

这里很关键:我的是单独写了一个文件进行配置

第一步:在config/app.php的providers下添加:

'providers'  =>  [MrgoonAliSmsServiceProvider::class,],

第二步:在app/aliyunsms.php中添加配置:

return [        'access_key'    => env('ALIYUN_SMS_AK', '填你自己的'),         'access_secret' => env('ALIYUN_SMS_AS', '填你自己的'), ],

第三步:在.env文件中配置常量

ALIYUN_ACCESSKEYID=填你自己的

文件就已经配置完成。

二. 编写接口控制器方法

新建控制器:UploadsController 继承 Controller类,方便操作。

第一步:编写API路由

Route::post('/index/sendsms', 'AppHttpControllersIndexSmsController@index');

第二步:编写控制器,发送短信(核心代码)

<?phpnamespace AppHttpControllersIndex;use  AppHttpControllersController;use  IlluminateHttpRequest;class  SmsController  extends  Controller  {    public  function  index(Request $request)  {        if  (!is_mobile($request->mobile))  {            return  array_format('手机号格式错误',  414);        }        //发送过快验证        $repeat_cache_key  =  md5($request->mobile  .  $request->type  .  'repeat');        if  (cache()->store('file')->has($repeat_cache_key))  {            return  array_format('发送过快,请稍后再试',  414);        }        $mobile_code  =  rand_num(6);        $sms  =  new  AliSms();        $temp  =  $sms->sendSms($request->mobile,  '填你自己的',  ['code'=>  $mobile_code]);        if  (!$temp)  {          return  array_format('发送短信失败',  414);        }        //缓存验证码        $cache_key  =  md5($request->mobile);        cache()->store('file')->put($cache_key,  $mobile_code,  5);         cache()->store('file')->put($repeat_cache_key,  $mobile_code,  0.1);        return  array_format('发送成功',  200);    }}

. Postman工具接口测试

63ad4c9cf68e9707f115f0d650749580.png

了解更多干货知识请关注公众号(Laravel技术社区)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值