我是WebSocket和Node.js的新手。我正在尝试创建实时聊天作为基本程序。我基本上我的代码基于这里。我在 Amazon Linux 中运行我的代码,以便它作为真正的 Web 服务器运行。输入用户名后,我总是收到错误。
我使用node-static作为我的索引.html文件的静态服务器API。
这是我的javascript代码:app.js这是我的索引代码.html位于"公共"文件夹内:索引.html我总是在索引.html的第 15 行收到错误。
谁能告诉我那里有什么问题?我尝试将该部分移动到connectToChat()函数内的任何地方,但错误仍然存在。
您调用的 url 有错误。它必须ws://<mywebserver>:8000
而不是ws://<mywebserver>:8000/index.html
要修复它,请在 index.html 中更改此行
var url = document.URL.replace("http://", "ws://");
自
var url = document.origin.replace("http://", "ws://");
我遇到了同样的问题。我能够通过将客户端脚本指向真实 IP 来修复它。这不是最好的解决方案,但目前会这样做。
let socket = io('http://000.000.000.000:0000');
希望对您有所帮助!