繁体   English   中英

“未找到类‘Nexmo\\Laravel\\Facades\\Nexmo’”错误

[英]"Class 'Nexmo\\Laravel\\Facades\\Nexmo' not found" Error

我试图在用户注册后发送短信,但它不断收到:

"Class 'Nexmo\\Laravel\\Facades\\Nexmo' not found"

我在我的控制器文件的顶部有这个:

use Nexmo\Laravel\Facades\Nexmo;

我的config/app.php文件中也有这个

'Nexmo' => Nexmo\Laravel\Facades\Nexmo::class,

我仍然遇到错误,有没有人或有同样的问题。 我知道这是一个类类型错误,但如果我添加了正确的类并正确使用它,为什么会这样。

另外,这是我的代码实现:

Nexmo::message()->send([
    'to' => '1122334455', //not actually using this number
    'from' => 'Test',
    'text' => 'Hey, test this digit code',
    'text' => $request->user()->activation_token
]);

更新 1:我已经完成了php artisan vendor:publish并发布了 nexmo 配置文件,但它仍然会出现上述错误。

将Nexmo \\ Laravel \\ NexmoServiceProvider添加到config / app.php中的providers数组中:

   'providers' => [
    // Other service providers...

    Nexmo\Laravel\NexmoServiceProvider::class,
],

谢谢大家的回答/建议

现在可以正常工作的某些原因? 我完成了所有建议/答案,但没有用,是否有其他内容(在此方面无用),却突然起作用了?

多谢你们 :)

如果我发现要使它起作用,我会更新此答案。

找到了答案:当我运行php artisan vendor:publish时发现了它,它给出了要发布的列表或其他内容,我想我没有做专门发布Nexmo的列表。 不过仍然应该工作,因为我做了将发布所有内容的工作。 无论如何,在config文件夹中发布了Nexmo文件。 不知何故,这使其他所有内容都起作用,并且可能是答案/建议的组合

无论如何,谢谢你们的帮助!

首先, Nexmo文档没有提到与Laravel一起使用,但如果与Laravel一起使用,则需要使用一个额外的包。

有一个简单的解决方案。您需要安装 Nextmo 已经提供的附加软件包才能与Laravel一起使用。只需安装下面一个。我希望这对您有所帮助。

composer require nexmo/laravel

尝试一下

            $nexmo = app('Nexmo\Client');

                $nexmo->message()->send([
                    'to' => 'yournumber',
                    'from' => 'yournumber',
                    'text' => "message"
                ]);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM