使用 overtrue/easy-sms 包,阿里短信平台发送失败?
easysms.php
return [
// HTTP 请求的超时时间(秒)
'timeout' => 5.0,
// 默认发送配置
'default' => [
// 网关调用策略,默认:顺序调用
'strategy' => \Overtrue\EasySms\Strategies\OrderStrategy::class,
// 默认可用的发送网关
'gateways' => [
'aliyun'
],
],
// 可用的网关配置
'gateways' => [
'errorlog' => [
'file' => '/tmp/easy-sms.log',
],
'aliyun' => [
'access_key_id' => env('ALIYUN_ACCESS_KEY_ID'),
'access_key_secret' => env('ALIYUN_ACCESS_KEY_SECRET'),
'sign_name' => env('ALIYUN_SIGN_NAME')
],
],
];
测试代码
public function index()
{
$sms = app('easysms');
try {
$result = $sms->send('135****8942', [
'template' => 'SMS_1057',
'content' => '您的验证码为:6379, 该验证码5分钟内有效,请勿泄漏与他人',
]);
dd($result);
} catch (\GuzzleHttp\Exception\ClientException $exception) {
$response = $exception->getResponse();
$result = json_decode($response->getBody()->getContents(), true);
dd($result);
}
}
没加 template 参数,短信平台返回 MissingTemplateCode,所以证明能调通
加了template,报 All the gateways have failed ,请问这么写有问题吗
阿里云短信发送这样写可以了,非常感谢