从终端或命令行进入您的项目目录实行
// 拉取阿里大鱼组件composer require iscms/alisms-for-laravel
在 config/app.php
的 providers
数组中配置

iscms\Alisms\AlidayuServiceProvider::class,
在项目根目录实行
// 天生配置文件php artisan vendor:publish
你的 config
目录该当增加了 alisms.php
配置文件
<?php
return [ 'KEY' =>env('ALISMS_KEY',null), 'SECRETKEY'=>env('ALISMS_SECRETKEY',null),
];
然后你须要在你项目的 .ENV
配置文件中写入 SMS 配置
ALISMS_KEY=31663166
ALISMS_SECRETKEY=
此处 ALISMS_SECRETKEY 是指你的账户运用密码, 请勿透露给他人.
开始利用
博主项目示例, 首先在命名空间里引入, 然后拼接发送参数再发送.
<?phpnamespace App\Http\Controllers\home;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Redis as Redis;
// 引入阿里大鱼命名空间use iscms\Alisms\SendsmsPusher as Sms;class RegisterController extends Controller { public $sms; public function __construct(Sms $sms)
{ $this->sms = $sms;
} public function code(Request $request)
{ $input = $request->all(); // 判断该手机在10分钟内是否已经发过短信
$exists = \Redis::exists('IT:STRING:USER:CODE:'.$input['phone']); if($exists === true){ return response()->json(['ResultData '=> '失落败', 'info' => '重复发送']);
} // 天生随机号码
$num = rand(100000,999999); // 组装参数
$smsParams = [ 'code' => $num, 'product' => '案例展示'
]; // 须要参数
$phone = $input['phone']; $name = '注册验证'; $content = json_encode($smsParams); $code = 'SMS_3166316'; // 发送验证码方法
$data = $this->sms->send($phone, $name, $content, $code); // 检讨工具是否具有 result 属性
if(property_exists($data, 'result')){ // 设置一个 60 秒过期的 Redis String 类型
\Redis::sEtex('IT:STRING:USER:CODE:' . $phone, 600, $num); return response()->json(['ResultData' => '成功', 'info' => '已发送']);
}else{ return response()->json(['ResultData' => '失落败', 'info' => '重复发送']);
}
}
}
参数
send 方法参数
$phone 指接管短信方的短旗子暗记码
$name 指短信署名 可以在阿里大鱼短信署名 http://www.alidayu.com/admin/service/sign 找到
$content 是指短信模板中的变量内容
在自己的阿里大鱼模板里面有下面一个短信模板, 那么里面存在着 2 个变量须要更换, 一个是 ${code}
, 一个是 ${product}
, 那么对应的我们的 $content 就该当为
{
code: \公众天生的验证码\"大众,
product: \"大众示例项目\"大众}
$code
指在阿里云中的模板 ID, 上面的例子中利用了一个身份验证模板, 那 $code
该当填写 SMS_3166316
.
来源于:http://aabvip.com