Ошибка подключения WebSocket к <url>: ошибка во время рукопожатия WebSocket: неожиданный код ответа: 404

Я новичок в WebSocket и Node.js. Я пытаюсь создать чат в режиме реального времени в качестве основной программы. Я в основном основал свой код здесь. Я запускаю свой код в Amazon Linux, чтобы он работал как настоящий веб-сервер. Я всегда получаю сообщение об ошибке после ввода имени пользователя.

Я использую node-static в качестве статического серверного API для моего файла index.html.

Вот мой код для моего javascript: app.js А вот мой код для index.html, расположенный внутри "public" папки: index.html Я всегда получаю сообщение об ошибке в строке 15 в index.html.

Может кто-нибудь сказать мне, в чем там проблема? Я пытался переместить эту часть в любое место внутри функции connectToChat(), но ошибка все еще там.

2 ответа

Я была такая же проблема. Я смог это исправить, указав клиентскому скрипту реальный IP. Это не лучшее решение, но оно подойдет на данный момент.

let socket = io('http://000.000.000.000:0000');

Надеюсь, поможет!

У вас есть ошибка в 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://");

Другие вопросы по тегам