Zttp 是一个围绕 Guzzle 的包装器,用于简化常见用例
发布于 作者 Eric L. Barnes
Zttp 是 Adam Wathan 推出的一个新的 PHP 包,它是 Guzzle 的一个包装器,旨在带来富有表现力的语法并简化常见用例。以下是用自定义标头发出 POST 请求的示例
$response = Zttp::withHeaders(['Fancy' => 'Pants'])->post($url, [ 'foo' => 'bar', 'baz' => 'qux',]); $response->json();
用 Guzzle 进行类似的操作如下
$client = new Client();$response = $client->request('POST', $url, [ 'headers' => [ 'Fancy' => 'Pants', ], 'form_params' => [ 'foo' => 'bar', 'baz' => 'qux', ]]); json_decode($response->getBody());
如您所见,Zttp 简化了代码以发出请求并自动返回 JSON 响应。
以下是 Zttp 的一些其他示例
使用表单参数执行 POST 操作
$response = Zttp::asFormParams()->post($url, [ 'foo' => 'bar', 'baz' => 'qux',]);
PATCH 请求
$response = Zttp::patch($this->url('/patch'), [ 'foo' => 'bar', 'baz' => 'qux',]);
PUT 请求
$response = Zttp::put($this->url('/put'), [ 'foo' => 'bar', 'baz' => 'qux',]);
DELETE 请求
$response = Zttp::delete($this->url('/delete'), [ 'foo' => 'bar', 'baz' => 'qux',]);
添加 Accept 标头
$response = Zttp::accept('banana/sandwich')->post($url);
阻止重定向
$response = Zttp::withoutRedirecting()->get($url);
在 Zttp 测试文件 中还有其他几个示例。该软件包仍在开发中,您可以收听最新的 Full Stack Radio 以了解幕后故事。有关更多信息,请查看 GitHub 项目。