Coroutine\Http\Client->upgrade

最后更新于:2022-04-02 06:27:18

# Coroutine\\Http\\Client->upgrade [TOC] 升级为`WebSocket`连接。 ~~~ function Coroutine\Http\Client->upgrade(string $path); ~~~ * 请求失败返回`false`,成功返回`true` * 某些情况下请求虽然是成功的,`upgrade`返回了`true`,但服务器并未设置`HTTP`状态码为`101`,而是`200`或`403`,这说明服务器拒绝了握手请求 * `WebSocket`握手成功后可以使用`push`方法向服务器端推送消息,也可以调用`recv`接收消息 * `upgrade`会产生一次协程调度 ## 使用实例 ~~~ go(function () { $cli = new Co\http\Client("127.0.0.1", 9501); $ret = $cli->upgrade("/"); if ($ret) { while(true) { $cli->push("hello"); var_dump($cli->recv()); co::sleep(0.1); } } }); ~~~
';