Laravel-Nexmo“请提供Nexmo API凭据”错误

时间:2019-12-29 13:23:31

标签: php laravel sms laravel-5.8 nexmo

我想使用laravel-Nexmo发送发送短信。我已经配置了所有设置。但是,当我尝试发送短信时,会出现此错误

  

请提供Nexmo API凭据。可能的组合:api_key +   api_secret,api_key + signature_secret,private_key + application_id,   api_key + api_secret + private_key + application_id,api_key +   signature_secret + private_key + application_id

我在services.php,.env文件和nexmo.php中添加了nexmo api_key和secret_key 我还添加了这个; curl.cainfo="C:\xampp\apache\bin\cacert.pem"在php.ini文件中

此错误的原因是什么以及如何解决此问题?谢谢!

3 个答案:

答案 0 :(得分:0)

  

我已经配置了所有设置。

您配置了哪些确切设置?该错误意味着该库无法确定要用于Nexmo的适当凭据集。

如果要发送短信,则只需设置NEXMO_KEYNEXMO_SECRET。我将尝试仅设置这两个环境选项,然后查看是否出现相同的错误。如果您通过设置NEXMO_SIGNATURE_SECRET使用请求签名,那么我暂时将其禁用,只是为了检查是否发送基本SMS。

更新设置后,我将确保使用artisan config:clear清除缓存以清除缓存,这应该允许在下一页加载时提取设置。

答案 1 :(得分:0)

我遇到了同样的问题,并且能够解决它。

原因

在我看来,laravel / nexmo-notification-channel已更新,但Laravel本身尚未更新。

根据Laravel [6.x]拉取请求:

composer require laravel/nexmo-notification-channel

这还将安装nexmo / laravel软件包。该软件包包括其自己的配置文件。您可以使用NEXMO_KEY和 NEXMO_SECRET环境变量可将您的Nexmo设置为公开和秘密 键。

https://github.com/laravel/docs/pull/5519/files?short_path=7c04c15#diff-7c04c1591e2821d381785df56ebd70af

解决方案 很简单,只需将此新的nexmo.php配置文件复制到您的配置文件夹中:https://github.com/Nexmo/nexmo-laravel/blob/master/config/nexmo.php

只要在.env文件中设置了NEXMO_KEY和NEXMO_SECRET,它现在就可以正常工作。

答案 2 :(得分:0)

我正在使用 Laravel 8 并面临同样的问题。然后我意识到我正在添加

  NEXMO_KEY=your key here 
  NEXMO_SECRET=your secret here 

.env.example 文件。我刚刚将它添加到 .env 文件并通过 php artisan config:cache 重新配置缓存 现在它可以工作了。

注意:您应该从 vonage.com 获取您的 api_keysecret