- 异步Http/WebSocket客户端
- 启用Http客户端
- 构造方法
- 对象属性
- 异常错误码
异步Http/WebSocket客户端
Swoole-1.8.0版本增加了对异步Http/WebSocket客户端的支持。底层是用纯C编写,拥有超高的性能。
启用Http客户端
- 1.8.6版本之前,需要在编译swoole时增加
—enable-async-httpclient来开启此功能。 - swoole_http_client不依赖任何第三方库
- 支持
Http-Chunk、Keep-Alive、form-data - Http协议版本为
HTTP/1.1 gzip压缩格式支持需要依赖zlib库
构造方法
function swoole_http_client->__construct(string $ip, int port, bool $ssl = false);
- $ip 目标服务器的IP地址,可使用
swoole_async_dns_lookup查询域名对应的IP地址 - $port 目标服务器的端口,一般
http为80,https为443 - $ssl 是否启用
SSL/TLS隧道加密,如果目标服务器是https必须设置$ssl参数为true
对象属性
$body请求响应后服务器端返回的内容$statusCode服务器端返回的Http状态码,如404、200、500等$set_cookie_headers服务器端返回的原始COOKIE信息,包括了domain和path项$headersHttp请求头$cookiesHttp Cookie
异常错误码
某些情况下服务器端没有正常返回数据,底层会将$statusCode标记为负数。
-1:连接超时,服务器未监听端口或网络丢失,可以读取$errCode获取具体的网络错误码-2:请求超时,服务器未在规定的timeout时间内返回response-3:客户端请求发出后,服务器强制切断连接
