异步Http/WebSocket客户端 [编辑本页]

Swoole-1.8.0版本增加了对异步Http/WebSocket客户端的支持。底层是用纯C编写,拥有超高的性能。

启用Http客户端

  • 1.8.6版本之前,需要在编译swoole时增加--enable-async-httpclient来开启此功能。
  • swoole_http_client不依赖任何第三方库
  • 支持Http-ChunkKeep-Aliveform-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 目标服务器的端口,一般http80https443
  • $ssl 是否启用SSL/TLS隧道加密,如果目标服务器是https必须设置$ssl参数为true

对象属性

  • $body 请求响应后服务器端返回的内容
  • $statusCode 服务器端返回的Http状态码,如404200500

  • 鬼眼

    求一个参数说明。。

  • donald

    参数说明,麻烦更新一下

  • tiger

    为什么只支持cli模式啊?

  • justin

    --enable-async-httpclient 1.8.6起没有了

  • jimmy

    总有这个提示,不爽 WARNING swClient_inet_addr: DNS lookup will block the process. Please use swoole_async_dns_lookup.

  • 会说话的大脸猫

    cli模式下可用,毛用啊

  • 周宏

    求一个参数说明。。

  • 秦宏全

    @会说话的大脸猫 用处大啦,只是你接触的太少了而已,自动机器人都需要的,自动设置调用都需要

  • RobberPhex

    支持流式下载吗?比如我用swoole代理一个非常大的文件,upstream返回10M,我给client 10M,一直循环到结束。