Guzzle 是一个非常流行的 PHP 的 HTTP 客户端,现在各大厂的 SDK 也都开始基于 Guzzle 开发,因为 Swoole 只支持 PHP Stream 的协程 Hook ,而 Guzzle 默认是使用 cURL 扩展的,所以 Mix PHP 开发了 Guzzle Hook,能在不修改源码的情况下让 Guzzle 协程化。
Github
安装
使用 Composer 安装:
composer require mix/guzzle-hook
在项目的 composer.json 文件中增加 extra 配置项,如下:
"extra": {
"include_files": [
"vendor/mix/guzzle-hook/src/functions_include.php"
]
}
使用
直接使用 Guzzle 开发
无需做任何特殊的代码处理,直接根据 Guzzle 文档使用:
// Mix PHP 中是 xgo ,原生 swoole 是 go
go(function () {
$client = new GuzzleHttp\Client();
$res = $client->request('GET', 'https://api.github.com/user', [
'auth' => ['

Guzzle 是广泛使用的 PHP HTTP 客户端,但其默认使用 cURL 不支持 Swoole 的协程。通过 Mix PHP 的 Guzzle Hook,可以在不修改源码的情况下实现 Guzzle 在 Swoole 协程环境中的支持。只需在项目配置中添加扩展,并可直接按照原有方式使用 Guzzle 或依赖它的第三方 SDK,如 alibabacloud/client 和 TencentCloud/tencentcloud-sdk-php。
最低0.47元/天 解锁文章
454

被折叠的 条评论
为什么被折叠?



