【问题标题】:socket.io connection not working but new Websocket workingsocket.io 连接不工作,但新的 Websocket 工作
【发布时间】:2022-05-08 04:40:13
【问题描述】:

我有一个套接字服务器,我只是尝试连接该服务器。

当我尝试新的 Websocket 时,我的连接正常;

const socket = new Websocket('ws://127.0.0.1:8000');

但是当我想像这样使用 socket.io 时;

const socket = io('ws://127.0.0.1:8000');
socket.on('connect', () => {
  console.log('connected');
});

socket io 代码无法连接到 socket 每次都会触发 cors 错误,但新的 Websocket 连接很容易工作。

我找到了这样的解决方案;

  socket = io('ws://127.0.0.1:8000', {
    "transports": [
      "websocket"
    ]    
  });

我添加了传输数据,然后套接字启动工作。

【问题讨论】:

  • 您是否误解了 socket.io 和 Websocket 之间的区别?你真的想用哪一个?
  • 我想使用socket.io。
  • 那么你应该使用 socket.io 而不是 Websocket Web API。有很多教程供您了解如何实现套接字。我假设您正在尝试通过不立即初始化套接字但稍后再初始化来实现重新连接。因此,您可以查看以下解决方案,然后再次询问您的问题,您究竟是如何以及在哪里卡住的。 stackoverflow.com/questions/49629881/…

标签: javascript websocket socket.io


【解决方案1】:

这对我有用 socket = io('ws://localhost:8000',{transports:['websocket']});

感谢@Ugurcan

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-17
    • 1970-01-01
    • 2015-06-07
    • 2016-03-25
    • 2019-02-27
    • 2015-10-03
    • 2021-11-02
    • 1970-01-01
    相关资源
    最近更新 更多