为了账号安全,请及时绑定邮箱和手机立即绑定

Socket.io 客户端无法与 websocket 服务器一起使用

Socket.io 客户端无法与 websocket 服务器一起使用

Go
慕侠2389804 2022-05-18 14:36:23
我使用https://github.com/gorilla/websocket在 go 中编写了一个 websocket 服务器。在客户端,前端团队想要使用 Socket.io,但无法正常工作。使用普通的 websockets 一切正常。我对 Socket.io 的了解不多,只是我在互联网上阅读的内容,并且我没有找到任何决定性和最近的答案。有没有可能让 Socket.io 与普通的 websocket 服务器一起工作?Socket.IO 客户端错误:超时。Socket.IO 客户端代码:    var token = "valid_token";    var socket = io(        'ws://localhost:6060',        {            transports: ['websocket'],            path: '/ws/dispatchers',            query:  {                token: token            },        }    );    socket.on('connect_error', (error) => {        console.log("------connect_error------");        console.log(error);    });    socket.on('connect_timeout', (timeout) => {        console.log("------timeout-----");        console.log(timeout);    });    socket.on('connect', function(){        console.log("---------connect---------");    });    socket.on('event', function(data){        console.log(data)    });    socket.on('disconnect', function(){        console.log("---------disconnect---------")    });    socket.on('error', function(err){        console.log("--------error------------");        console.log(err)    });    socket.on('ping', () => {        console.log("--------ping------------");    });    socket.on('pong', (latency) => {        console.log("--------pong------------");    });后端错误:websocket: close 1005 (no status)后端代码,同: https ://github.com/gorilla/websocket/tree/master/examples/chat
查看完整描述

1 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

来自 Socket.io 文档

什么 Socket.IO 不是 Socket.IO 不是 WebSocket 实现。尽管 Socket.IO 确实尽可能使用 WebSocket 作为传输,但它会为每个数据包添加一些元数据:数据包类型、命名空间和需要消息确认时的数据包 ID。这就是为什么 WebSocket 客户端将无法成功连接到 Socket.IO 服务器,而 Socket.IO 客户端也将无法连接到 WebSocket 服务器。请在此处查看协议规范。


查看完整回答
反对 回复 2022-05-18
  • 1 回答
  • 0 关注
  • 289 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信