ligjre87 / http-client
worker htttp thinkphp6.0
1.0.2
2023-10-19 12:34 UTC
Requires
- workerman/psr7: >=1.4.3
- workerman/workerman: ^4.0.30
This package is auto-updated.
Last update: 2024-09-19 14:38:46 UTC
README
基于 workerman 的 PHP 异步 HTTP 客户端
-
异步请求。
-
使用 PSR-7 接口进行请求和响应。
-
内置连接池。
安装
composer require workerman/http-client
示例
example.php
<?php use Workerman\Worker; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker(); $worker->onWorkerStart = function () { $http = new ClientWork\Client(); $http->get('https://example.com/', function ($response) { var_dump($response->getStatusCode()); echo $response->getBody(); }, function ($exception) { echo $exception; }); $http->post('https://example.com/', ['key1' => 'value1', 'key2' => 'value2'], function ($response) { var_dump($response->getStatusCode()); echo $response->getBody(); }, function ($exception) { echo $exception; }); $http->request('https://example.com/', [ 'method' => 'POST', 'version' => '1.1', 'headers' => ['Connection' => 'keep-alive'], 'data' => ['key1' => 'value1', 'key2' => 'value2'], 'success' => function ($response) { echo $response->getBody(); }, 'error' => function ($exception) { echo $exception; } ]); }; Worker::runAll();
使用以下命令运行: php example.php start 或 php example.php start -d
选项
<?php require __DIR__ . '/vendor/autoload.php'; use Workerman\Worker; $worker = new Worker(); $worker->onWorkerStart = function(){ $options = [ 'max_conn_per_addr' => 128, 'keepalive_timeout' => 15, 'connect_timeout' => 30, 'timeout' => 30, ]; $http = new ClientWork\Client($options); $http->get('http://example.com/', function($response){ var_dump($response->getStatusCode()); echo $response->getBody(); }, function($exception){ echo $exception; }); }; Worker::runAll();
许可
MIT