laravel 中Guzzle使用指南

zealov/ 1月前/ 浏览 91

Guzzle 是一个 PHP HTTP 客户端,可以轻松发送 HTTP 请求,并且可以轻松地与 Web 服务集成。

  • 用于构建查询字符串、POST 请求、流式传输大量上传、流式传输大量下载、使用 HTTP cookie、上传 JSON 数据等的简单界面...
  • 可以使用同一接口发送同步和异步请求。
  • 使用 PSR-7 接口进行请求、响应和流。这允许您将其他 PSR-7 兼容库与 Guzzle 一起使用。
  • 抽象出底层的 HTTP 传输,允许您编写与环境和传输无关的代码;即,没有对 cURL、PHP 流、套接字或非阻塞事件循环的硬依赖。
  • 中间件系统允许您增强和组合客户端行为。
$client = new GuzzleHttp\Client();
$res = $client->request('GET', 'https://api.github.com/user', [
    'auth' => ['user', 'pass']
]);
echo $res->getStatusCode();
// "200"
echo $res->getHeader('content-type')[0];
// 'application/json; charset=utf8'
echo $res->getBody();
// {"type":"User"...'

// Send an asynchronous request.
$request = new \GuzzleHttp\Psr7\Request('GET', 'http://httpbin.org');
$promise = $client->sendAsync($request)->then(function ($response) {
    echo 'I completed! ' . $response->getBody();
});
$promise->wait();

发表评论

暂无评论,抢个沙发...

客服 工单