swoole_http_client->set
最后更新于:2022-04-02 06:39:22
# swoole\_http\_client->set
[TOC]
设置客户端参数,此方法与`Swoole\Client->set`接收的参数完全一致,可参考[Swoole\\Client->set](Client-配置选项.md)方法的文档。
除了设置TCPSocket的参数之外,`Swoole\Http\Client`额外增加了一些选项,来控制`Http`和`WebSocket`客户端。
## 超时控制
设置`timeout`选项,启用Http请求超时检测。单位为秒,最小粒度支持毫秒。
~~~
$http->set(['timeout' => 3.0]);
~~~
* 连接超时或被服务器关闭连接,`statusCode`将设置为`-1`
* 在约定的时间内服务器未返回响应,请求超时,`statusCode`将设置为`-2`
* 请求超时后底层会自动切断连接
* 设置为`-1`表示永不超时,底层将不会添加超时检测的定时器
> 仅在`1.9.14`或更高版本可用
## keep\_alive
设置`keep_alive`选项,启用或关闭Http长连接。
~~~
$http->set(['keep_alive' => false]);
~~~
## websocket\_mask
`WebSocket`客户端启用或关闭掩码。默认为关闭。启用后会对WebSocket客户端发送的数据使用掩码进行数据转换。
~~~
$http->set(['websocket_mask' => true]);
~~~
';