首页 » PHP教程 » smsphp技巧_Laravel对接阿里云SMS发送短信验证码

smsphp技巧_Laravel对接阿里云SMS发送短信验证码

访客 2024-11-06 0

扫一扫用手机浏览

文章目录 [+]

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

一. 新建项目,安装Laravel5.6版本的框架代码1. 环境配置哀求

Laravel 对系统有一些哀求,您的做事器知足下面的哀求:

smsphp技巧_Laravel对接阿里云SMS发送短信验证码

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

备注:您须要达到以上的配置哀求,这个就不详细详细解释,详细看PHP语法

smsphp技巧_Laravel对接阿里云SMS发送短信验证码
(图片来自网络侵删)
2. 安装Laravel5.6框架

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

composer -v

// 未安装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,看到如下界面便是访问正常了。

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

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

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

4、开通短信服务

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

2、点击海内

3、添加署名

4、添加模板

5. 配置阿里云access_key和access_secret配置

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

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

'providers' => [Mrgoon\AliSms\ServiceProvider::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', '\App\Http\Controllers\Index\SmsController@index');

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

<?phpnamespace App\Http\Controllers\Index;use App\Http\Controllers\Controller;use Illuminate\Http\Request;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工具接口测试

理解更多干货知识请关注"大众年夜众号(Laravel技能社区)

标签:

相关文章

介绍白点控制之路,从原理到方法

白点,作为生活中常见的现象,无处不在。对于如何控制白点,许多人却感到困惑。本文将从原理出发,探讨白点的控制方法,并结合实际案例,为...

PHP教程 2025-01-03 阅读1 评论0

介绍直播王者,如何开启你的电竞直播之旅

随着电竞产业的蓬勃发展,越来越多的年轻人投身于电竞直播行业。王者荣耀作为一款备受欢迎的MOBA手游,吸引了大量玩家和观众。如何开启...

PHP教程 2025-01-03 阅读1 评论0