我需要在控制器Laravel中执行HTTP请求以通过URL获取数据。 远程URL返回JSON数据格式。 除了标准PHP Curl?
之外,Laravel中的HTTP请求用什么?答案 0 :(得分:1)
Guzzle是一种流行的跨框架,用于对外部服务进行HTTP调用。 Laravel已将其作为其邮件集成服务(Sparkpost,Mailgun,Mandrill)的依赖项。
修改composer.json
并在require
部分添加"guzzlehttp/guzzle": "~6"
laravel / framework line之后。
composer update
在控制器的顶部添加use GuzzleHttp\Client
;
然后在一个方法中你可以像这样使用它:
$client = new \GuzzleHttp\Client();
$res = $client->request('GET', 'https://api.github.com/user', [
'auth' => ['user', 'pass']
]);
echo $res->getStatusCode();
// 200
echo $res->getHeaderLine('content-type');
// 'application/json; charset=utf8'
echo $res->getBody();
// {"type":"User"...'