hasanparasteh / async-request
0.1.5
2023-06-01 14:43 UTC
Requires
- php: >=8.0.0
- clue/socks-react: ^1.4.0
- react/http: ^1.8.0
- react/promise-timer: ^1.9.0
Requires (Dev)
- phpunit/phpunit: ^9.5
README
此软件包将帮助您以异步方式向任何服务器发送任何请求!只需按照说明顺序安装和设置异步 curl 软件包。
> composer require hasanparasteh/async-request
快速入门示例
这是进行 GET
请求的最简单方式。结果将在一个可调用的函数中,包含3个主要数据。
- result:
bool
=> 表示 curl 是否成功 - code:
int
=> http 状态码 - body:
array
=> 服务器返回的 json 解码数组 - error:
string
=> curl 错误的描述
$request = new AsyncRequest("https://reqres.in"); $request->get("/api/users", ["page" => 2])->then(function ($result) { if (!$result['result']) echo "Curl Error cause {$result['error']}"; else switch ($result['code']) { case 200: echo "Server Response 200 With " . json_encode($result['body'], 128); break; case 400: echo "Server Response 400"; break; case 500: echo "Server Response 500"; break; // .. and any other response Code } });
GET
如果您需要传递任何查询参数,只需将其作为数组发送到第二个参数,如果需要添加任何头信息,请将其作为数组传递到第三个参数。
$request->get("endpoint")
POST
它与 GET
请求类似,但将参数作为 json 编码的原始数据发送。
$request->get("endpoint", ['paramName' => 'paramValue' ], ['headerName'=>'headerValue']);
PUT
它与 POST
完全相同。
$request->put("endpoint")
PATCH
它与 POST
完全相同。
$request->patch("endpoint")
DELETE
它与 POST
完全相同。
$request->delete("endpoint")