首页 > 解决方案 > 为什么在连接建立之前`websocket.close()`会触发`onerror`?

问题描述

websocket.close()在建立连接之前调用会触发onerror。我无法弄清楚错误是什么,也不知道它来自哪里。

const connection = new WebSocket("wss://echo.websocket.org");
connection.onopen = () => {
    console.log('open');
}
connection.onerror = (error) => {
    throw error; // this is thrown
}
connection.close();

在 chrome 开发控制台中测试。onerror被调用时被触发close

如果我在调用之前等到建立连接close,则不会引发错误。我想知道错误是什么

编辑:包括错误输出: 在此处输入图像描述

标签: javascriptwebsocket

解决方案


我接受了自己的建议并检查了它 - 它给了我这个: 错误

不确定这是否回答了您的问题,如果我说当您在关闭套接字之前不等待连接时不期待错误更奇怪。

只是用 try-catch 处理它还是把你connection.close()放在你的onopen处理程序里面?


推荐阅读