overtrue / easy-sms

📲 一款满足你的多种发送需求的短信发送组件
MIT License
3.1k stars 542 forks source link

【请教】使用阿里云发送短信能发送成功,但是控制台总是报错 #339

Closed shuyuye closed 1 year ago

shuyuye commented 1 year ago

Notice: Trying to access array offset on value of type null in /usr/local/www/hypery_test/vendor/overtrue/easy-sms/src/Gateways/AliyunGateway.php on line 83 [ERROR] All the gateways have failed. You can get error details by $exception->getExceptions()[84] in /usr/local/www/hypery_test/vendor/overtrue/easy-sms/src/Messenger.php [ERROR] #0 /usr/local/www/hypery_test/vendor/overtrue/easy-sms/src/EasySms.php(91): Overtrue\EasySms\Messenger->send()

// 默认可用的发送网关 'gateways' => [ 'aliyun', ],

// 可用的网关配置 'gateways' => [ 'aliyun' => [ 'access_key_id' => 'LT...', 'access_key_secret' => 'p5...', 'sign_name' => '传...', ], //... ], 确认阿里云的短信access_key_id和access_key_secret是正确的

overtrue commented 1 year ago

打印一下 https://github.com/overtrue/easy-sms/blob/master/src/Gateways/AliyunGateway.php#L80 这里的 $result 的值看看

shuyuye commented 1 year ago

打印好像打印不了,不过我把82行的源代码--if ('OK' != $result['Code']) --,改为-- if (!empty($result['Code']) && 'OK' != $result['Code']) --就好了