如何获取网页端Socket.io/Engine.io服务器的协议版本信息?
获取Socket.io服务器端协议/版本的方法
查看浏览器开发者工具:
- 打开目标网页后按F12调出开发者工具,切换到「网络」标签
- 筛选「WS」类型请求,找到Socket.io的连接请求,在「响应头」或「帧」中查找包含
engineio、socketio的字段——握手阶段服务器通常会返回版本信息 - 也可以查看初始的HTTP握手请求(路径含
/socket.io/的GET请求),响应头可能有X-Socket-IO-Version字段,或响应体的JSON数据里包含版本相关内容
分析前端代码:
在开发者工具「源代码」标签中,找到网页引入的socket.io.js文件,文件开头或注释里一般会标注Socket.io版本,服务器端通常和前端版本兼容命令行握手测试:
执行命令curl -i "https://demo.betgames.tv/socket.io/?EIO=4&transport=polling",响应内容开头的数字代表Engine.io协议版本,响应体的JSON数据也会包含握手相关的版本兼容信息
示例图片内容翻译(按版本不兼容类错误场景):「协议版本不匹配,请确认客户端与服务器使用兼容的Socket.io/Engine.io版本」
内容的提问来源于stack exchange,提问作者Moshe Madula
相关产品推荐
相关产品推荐

