我已经安装了Httpful,如Composer向composer.json添加以下内容:
{
"require": {
"nategood/httpful": "*"
}
}
我正在使用Laravel 4,所以我跑了composer install
我已经检查了插件是否已安装并在那里,实际上在 laravel 的供应商文件夹下我可以找到它。但是我不断收到以下错误:
ERROR: exception 'SymfonyComponentDebugExceptionFatalErrorException' with message 'Class 'Httpful' not found'
我缺少一些步骤?
提前谢谢你
与此包名相关的类与 Laravel 的 Response 类冲突,因此这是您在 Laravel 中使用它的方式:
$url = "http://api.openweathermap.org/data/2.5/weather?lat=22.569719&lon=88.36972";
$response = HttpfulRequest::get($url)->send();
echo $response->body->name."<br>";
echo $response->body->weather[0]->description;
该类不是Httpful
,而是Response
,所以你必须添加正确的命名空间,这样它就不会被 Laravel 的响应类混淆。
编辑:
在Laravel中,您可以为类创建别名。编辑您的应用程序/配置/应用程序.php然后在aliases
数组中添加:
'aliases' => array(
....
'Httpful' => 'HttpfulRequest',
),
您将能够以这种方式使用它:
$response = Httpful::get($url)->send();
您可能需要执行composer update
而不是composer install
。
区别在于install
将按照composer.lock
文件中的任何内容进行,而update
将选取添加到composer.json
文件中的任何新依赖项,然后将其写入composer.lock
文件。
注意:install
通常应在生产中使用,以从composer.lock
文件中获取最新版本,而 update
通常是开发中使用的命令,用于获取更新的依赖项。
这也意味着您应该将composer.lock
添加到您的 git 存储库中,即使默认情况下它在新的 Laravel 项目中在您的.gitignore
文件中。