构造方法,函数原型:
swoole_http_client->__construct(string $host, int port, bool $ssl = false);
$host
目标主机的IP地址,$host
如果为域名底层需要进行一次DNS查询,这是阻塞IO,请使用Swoole\Async::dnsLookup
实现异步非阻塞$port
目标端口,Http
一般为80
端口,Https
一般为443
端口$ssl
是否开启TLS/SSL
隧道加密,https
网站必须设置为true
1.9.15
/2.0.9
或更高版本增加了超时机制,默认超时时间为500ms
,如果你需要请求外网URL
请修改timeout
为更大的数值
$ssl
需要依赖openssl
,必须在编译swoole时启用--enable-openssl
$cli = new swoole_http_client('www.baidu.com', 80);
$cli->setHeaders([
'Host' => $domainName,
"User-Agent" => 'Chrome/49.0.2587.3',
'Accept' => 'text/html,application/xhtml+xml,application/xml',
'Accept-Encoding' => 'gzip',
]);
$cli->get('/index.html', function ($cli) {
echo "Length: " . strlen($cli->body) . "\n";
echo $cli->body;
});