awguzzle / guzzle
Guzzle是一个PHP HTTP客户端库
dev-master / 7.5.x-dev
2023-01-30 14:01 UTC
Requires
- php: ^7.2.4
- ext-json: *
- guzzlehttp/promises: ^1.5
- guzzlehttp/psr7: ^1.9 || ^2.4
- psr/http-client: ^1.0
- symfony/deprecation-contracts: ^2.2 || ^3.0
Requires (Dev)
- ext-curl: *
- bamarni/composer-bin-plugin: ^1.8.1
- php-http/client-integration-tests: ^3.0
- phpunit/phpunit: ^8.5.29 || ^9.5.23
- psr/log: ^1.1 || ^2.0 || ^3.0
Suggests
- ext-curl: Required for CURL handler support
- ext-intl: Required for Internationalized Domain Name (IDN) support
- psr/log: Required for using the Log middleware
Provides
This package is auto-updated.
Last update: 2024-08-29 05:37:42 UTC
README
Guzzle, PHP HTTP客户端
Guzzle是一个PHP HTTP客户端,可以轻松发送HTTP请求,并与Web服务集成。
- 简单的接口用于构建查询字符串、POST请求、大文件上传/下载、使用HTTP cookie、上传JSON数据等...
- 可以使用相同的接口发送同步和异步请求。
- 使用PSR-7接口处理请求、响应和流。这允许您使用Guzzle与其他PSR-7兼容的库。
- 支持PSR-18,允许与其他PSR-18 HTTP客户端互操作。
- 抽象化底层的HTTP传输,允许您编写与环境无关的代码;即,不依赖于cURL、PHP流、套接字或非阻塞事件循环。
- 中间件系统允许您增强和组合客户端行为。
$client = new \GuzzleHttp\Client(); $response = $client->request('GET', 'https://api.github.com/repos/guzzle/guzzle'); echo $response->getStatusCode(); // 200 echo $response->getHeaderLine('content-type'); // 'application/json; charset=utf8' echo $response->getBody(); // '{"id": 1420053, "name": "guzzle", ...}' // 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();
帮助和文档
我们仅使用GitHub issues来讨论bug和新的功能。有关支持,请参阅
安装Guzzle
推荐通过Composer安装Guzzle。
composer require guzzlehttp/guzzle
版本指南
安全性
如果您在此包中发现安全漏洞,请发送电子邮件至[email protected]。所有安全漏洞都将得到及时处理。请在修复宣布之前不要公开讨论与安全相关的问题。有关更多信息,请参阅安全策略。
许可
Guzzle在MIT许可(MIT)下提供。有关更多信息,请参阅许可文件。
企业版
作为Tidelift订阅的一部分提供
Guzzle的维护者以及数千个其他包的维护者正在与Tidelift合作,为构建应用程序时使用的开源依赖项提供商业支持和维护。节省时间,降低风险,提高代码健康度,同时为使用的确切依赖项支付维护者。了解更多信息。