属性列表
最后更新于:2022-04-02 06:27:11
# 属性列表
[TOC]
## errCode
类型为`int`型。当`connect`/`send`/`recv`/`close`失败或者超时时,会自动设置`Swoole\Coroutine\Http\Client->errCode`的值。
`errCode`的值等于`Linux errno`。可使用`socket_strerror`将错误码转为错误信息。
~~~
echo socket_strerror($client->errCode);
~~~
* 如果connect refuse,错误码为111
* 如果超时,错误码为110
> [附录:Linux的errno定义](附录:Linux错误码errno列表.md)
## body
存储上次请求的返回包体
~~~
$cli = new Swoole\Coroutine\Http\Client('127.0.0.1', 80);
$cli->get('/index.php');
echo $cli->body;
$cli->close();
~~~
## statusCode
`Http`状态码,如`200`、`404`等。状态码如果为负数,表示连接存在问题。
* `-1`:连接超时,服务器未监听端口或网络丢失,可以读取`$errCode`获取具体的网络错误码
* `-2`:请求超时,服务器未在规定的`timeout`时间内返回`response`
* `-3`:客户端请求发出后,服务器强制切断连接
在v4.2.10以后可以通过常量获取
~~~
define('SWOOLE_HTTP_CLIENT_ESTATUS_CONNECT_FAILED', -1);
define('SWOOLE_HTTP_CLIENT_ESTATUS_REQUEST_TIMEOUT', -2);
define('SWOOLE_HTTP_CLIENT_ESTATUS_SERVER_RESET', -3);
~~~
';