💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 配置选项 `Swoole\Client`和`Swoole\Http\Client`可以使用`set`方法设置一些选项,启用某些特性。 结束符检测 ------- ```php $client->set(array( 'open_eof_check' => true, 'package_eof' => "\r\n\r\n", 'package_max_length' => 1024 * 1024 * 2, )) ``` 长度检测 ----- ```php $client->set(array( 'open_length_check' => 1, 'package_length_type' => 'N', 'package_length_offset' => 0, //第N个字节是包长度的值 'package_body_offset' => 4, //第几个字节开始计算长度 'package_max_length' => 2000000, //协议最大长度 )); ``` MQTT协议 ---- 启用`MQTT`协议解析,`onReceive`回调将收到完整的`MQTT`数据包。 ```php $client->set(array( 'open_mqtt_protocol' => true, )); ``` Socket缓存区尺寸 ---- ```php $client->set(array( 'socket_buffer_size' => 1024*1024*2, //2M缓存区 )); ``` > 包括socket底层操作系统缓存区、应用层接收数据内存缓存区、应用层发送数据内存缓冲区 关闭Nagle合并算法 ---- ```php $client->set(array( 'open_tcp_nodelay' => true, )); ``` SSL/TLS证书 ---- ```php $client->set(array( 'ssl_cert_file' => $your_ssl_cert_file_path, 'ssl_key_file' => $your_ssl_key_file_path, )); ``` > swoole-1.7.21或更高版本可用 绑定IP和端口 ---- * 机器有多个网卡的情况下,设置`bind_address`参数可以强制客户端Socket绑定某个网络地址。 * 设置`bind_port`可以使客户端Socket使用固定的端口连接到外网服务器 ```php $client->set(array( 'bind_address' => '192.168.1.100', 'bind_port' => 36002, )); ``` > swoole-1.8.5或更高版本可用 Socks5代理设置 ---- ```php $client->set(array( 'socks5_host' => '192.168.1.100', 'socks5_port' => 1080, 'socks5_username' => 'username', 'socks5_password' => 'password', )); ``` * `socks5_username`、`socks5_password`为可选参数 Http代理设置 ---- ```php $client->set(array( 'http_proxy_host' => '192.168.1.100', 'http_proxy_port' => 1080, )); ``` 使用说明 ---- * 目前支持open_length_check和open_eof_check2种自动协议处理功能,参考swoole_server中的配置选项 * 启用了自动协议后,同步阻塞客户端recv方法将不接受长度参数,每次必然返回一个完整的数据包 * 启用了自动协议后,异步非阻塞客户端onReceive每次必然返回一个完整的数据包