pdf文档 Guzzle PHP 6.5 Documentation

237.04 KB 50 页 0 评论
语言 格式 评分
英语
.pdf
3
摘要
Guzzle 是一个 PHP HTTP 客户端,简化了发送 HTTP 请求和与 Web 服务集成的过程。它提供了构建查询字符串、POST 请求、流式上传和下载、使用 HTTP Cookie、上传 JSON 数据等功能的简单接口。Guzzle 支持同步和异步请求,并使用 PSR-7 接口实现请求、响应和流的处理,允许与其他 PSR-7 兼容库集成。Guzzle 抽象了底层的 HTTP 传输,使代码不依赖于特定的传输方式(如 cURL、PHP 流、套接字或非阻塞事件循环)。它还提供了中间件系统,用于增强和组合客户端行为。Guzzle 的安装推荐使用 Composer,并支持 PHP 5.5.0 及以上版本。
AI总结
**Guzzle PHP 6.5 文档总结** **核心观点:** Guzzle 是一个 PHP HTTP 客户端,简化了 HTTP 请求的发送,并易于与 Web 服务集成。它提供了同步和异步请求的统一接口,支持 PSR-7 标准,并抽象了底层的 HTTP 传输机制,使其不依赖于特定的库(如 cURL)。Guzzle 还提供了中间件系统,允许自定义客户端行为。 **关键信息:** 1. **主要特性:** - 提供简单接口构建查询字符串、POST 请求、流式上传/下载、使用 HTTP Cookies、上传 JSON 数据等。 - 支持同步和异步请求。 - 使用 PSR-7 接口,兼容其他 PSR-7 库。 - 抽象底层 HTTP 传输,代码不依赖于 cURL、PHP 流、套接字或非阻塞事件循环。 - 中间件系统允许扩展和组合客户端行为。 2. **安装与要求:** - 要求 PHP 5.5.0 及以上。 - 使用 PHP 流处理程序时,需启用 `allow_url_fopen`。 - 使用 cURL 处理程序时,需安装 cURL >= 7.19.4,并编译支持 OpenSSL 和 zlib。 - 推荐使用 Composer 安装 Guzzle,命令:`php composer.phar require guzzlehttp/guzzle:~6.0`。 3. **使用示例:** - 同步请求示例: ```php $client = new GuzzleHttp\Client(); $res = $client->request('GET', 'https://api.github.com/user', ['auth' => ['user', 'pass']]); echo $res->getStatusCode(); // "200" ``` - 异步请求示例: ```php $promise = $client->sendAsync($request)->then(function ($response) { echo 'I completed! ' . $response->getBody(); }); $promise->wait(); ``` 4. **请求选项:** - `auth`:用于 HTTP 认证,支持 basic、digest 和 NTLM 认证。 - `body`:控制请求体,支持字符串、文件资源和 PSR-7 流。 - `proxy`:指定 HTTP 代理。 - `stream`:设置为 `true` 以流式传输响应。 - `verify`:控制 SSL 证书验证行为。 5. **测试工具:** - **Mock Handler**:用于模拟 HTTP 请求的响应,便于单元测试。 - **History Middleware**:记录请求历史,便于调试。 - **Node.js 服务器**:用于集成测试。 **总结:** Guzzle 是一个功能强大且灵活的 PHP HTTP 客户端,支持多种请求类型和配置选项,适用于各种 HTTP 请求场景。其 PSR-7 兼容性和中间件系统使其易于扩展和集成,同时提供了丰富的测试工具,便于开发者进行单元和集成测试。
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余 38 页请下载阅读 -
文档评分
请文明评论,理性发言.