使用workerman或gatewayworker创建websocket连接。服务端使用 $connection->close();
主动关闭websocket连接.
客户端提示状态码为1006 (Abnormal Closure) ,不是正常关闭的1000 (Normal Closure),请问这个正常关闭的websocket状态码可以在哪里设置?
使用workerman和gatewayworker主动关闭连接都有同样的状态码
客户端使用 Textalk/websocket-php 和 dwst.github.io
服务端使用 workerman 和 gatewayworker
这个需要服务端发送一个websocket关闭的包,包里面包含状态码
start_gateway.php里加一句
$gateway->onWebSocketClose($connection) {
// 注意最后一个参数是true
$connection->close("\x88\x02\x27\x10", true);
};
workerman的话也是类似做法
$worker->onWebSocketClose($connection) {
// 注意最后一个参数是true
$connection->close("\x88\x02\x27\x10", true);
};
感谢walkor大的回复,已经得到解决!