Возникли проблемы при получении Socket.io для подключения к серверу - PullRequest
0 голосов
/ 25 апреля 2020

Я пытаюсь создать тестовый чат с node js и socket.io на моем сервере.

Гипотетически я просто хочу, чтобы socket.io обрабатывал все содержимое сервера через веб-сокеты. действительно вижу необходимость в '' http '' сервере и хочу этого избежать, так как я использую apache.

Я установил node и socket.io.

Когда я запускаю свой тестовый скрипт:

<head>
    <title>Test Chat Room</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.3.0/socket.io.js"></script>
    <script>            
        const socket = io('xx.xx.xx.16:3000', {transports: ['websocket', 'polling', 'flashsocket']});
    </script>
</head>

Изначально я получал предупреждения CORS, и, как предлагалось в некоторых других ответах, - я добавил

{transports: ['websocket', 'polling', 'flashsocket']}

Это заставило замолчать CORS, но теперь я получаю эту ошибку:

The connection to ws://file/socket.io/?EIO=3&transport=websocket was interrupted while the page was loading. socket.io.js:8:6159

Firefox can’t establish a connection to the server at ws://file/socket.io/?EIO=3&transport=websocket.

Я новичок в node и socket.io, но, похоже, он не пытается подключиться к моему серверу.

На моем сервере я открыл порт 3000 для tcp в брандмауэре и запустил этот простой скрипт узла ...

const io = require('socket.io')();
io.set('origins', '*:*');

io.on('connection', client => {
    console.log('someone connected');   
});

io.listen(3000);
console.log('listening on 3000');

Спасибо за вашу помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...