【问题标题】:Fatal Error : Class 'Guzzle\Http\Client' not found in Laravel Even after Guzzle installed致命错误:即使安装了 Guzzle,在 Laravel 中也找不到类“Guzzle\Http\Client”
【发布时间】:2020-02-12 19:38:49
【问题描述】:

我在 laravel 项目中遇到问题。 它显示此错误

致命错误:找不到类“Guzzle\Http\Client”

我已安装 Guzzle 并将其添加到配置文件中。我还在控制器中添加了use GuzzleHttp\Client;,但仍然显示错误。

这是正在使用的代码:

$client = new GuzzleHttp\Client();

请大家帮忙。 谢谢

【问题讨论】:

  • 你确定你的项目有狂热吗?你用的是什么 laravel 版本?
  • laravel 版本为 5.5
  • 转到项目的根目录,然后运行composer require guzzlehttp/guzzle
  • 已经安装了 "guzzlehttp/guzzle": "~6.0",
  • 在控制器顶部声明 guzzle; use GuzzleHttp\Client; 并在你的函数中调用它使用这个; $client = new Client();

标签: php laravel


【解决方案1】:

您错过了一个'\'。添加它即可解决问题。

$client = new \GuzzleHttp\Client();

如果您将它添加到控制器的顶部,例如

use GuzzleHttp\Client as GuzzleHttp;

那么你就可以通过

$client = new GuzzleHttp();

我使用 as 是因为可能有 Client 已在使用。

如果你在 config/app.php 的别名中添​​加了类,比如

'GuzzleHttp' => \GuzzleHttp\Client::class

然后在控制器中像这样使用它

use GuzzleHttp;

【讨论】:

    【解决方案2】:

    只是一个小错误。请添加 '\' 和 GuzzleHttp\Client();,如下所示:

    $client = new \GuzzleHttp\Client();
    

    作为参考,您可以在此处查看文档

    https://github.com/guzzle/guzzle

    发送异步请求。

    您可以像这样发送异步请求:

    $request = new \GuzzleHttp\Psr7\Request('GET', 'http://httpbin.org');
    

    如果不起作用,请尝试根据您的 laravel 版本更新 Guzzle:

    然后您可以使用 composer 更新 Guzzle:

    composer update
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-31
      • 2014-10-31
      • 2021-02-15
      • 2021-04-16
      • 1970-01-01
      • 2016-07-05
      • 1970-01-01
      相关资源
      最近更新 更多