从控制器LARAVEL 4调用外部API函数

Dee*_*zzy 23 php laravel laravel-4

我在laravel 4上构建了一个API,它返回了json结果.对于API,我创建了一个文件夹.现在我为Web应用程序创建了另一个外部项目,我想要的是从laravel app控制器访问API函数.为了更清楚,我如何从laravel控制器发出外部API请求?

Ant*_*iro 45

你可以使用Guzzle:

安装它:

composer require guzzle/guzzle ~3.0
Run Code Online (Sandbox Code Playgroud)

创建设置基本URL的客户端:

$client = new \Guzzle\Service\Client('http://api.github.com/users/');
Run Code Online (Sandbox Code Playgroud)

得到你的回复:

$response = $client->get("users/$username")->send();
Run Code Online (Sandbox Code Playgroud)

并显示它:

dd($response);
Run Code Online (Sandbox Code Playgroud)

但是如果你试图遵循MVC模式,你不应该直接在你的控制器中这样做,所以创建一个服务类,你从你的控制器或你的存储库调用,为你做这项工作.

  • 作曲家告诉我,"套装guzzle/guzzle被放弃了,你应该避免使用它.请改用guzzlehttp/guzzle (9认同)
  • 是不是已经被包含在Laravel中?(我在运行作曲家更新时看到了) (2认同)