Я работаю над небольшим приложением, используя node.js и базовую веб-страницу html / js.
На localhost у меня нет проблем, webSocket тоже работает, но когда я пытаюсь использовать свой выделенный сервер (сервер ovh / kimsufi), мой клиент websocket возвращает ошибку тайм-аута:
На моем сервере:
ws.js:
var http = require('http'),
WebSocket = require('ws'),
WebSocketServer = WebSocket.Server;
var server = http.createServer();
server.listen('3005', '0.0.0.0', function() {
console.info('Listening on ' + server.address().address + ':' + server.address().port);
var wss = new WebSocketServer({server: server});
wss.on('connection', function(client){
console.info('connected');
client.on('message', function(message) {
client.send('received');
console.info(data);
});
});
});
Результат на консоли Linux:
-----@-----:~/---/---/nodeServer$ node ws.js Listening on 0.0.0.0:3005
На моем клиенте:
var p1 = new Promise(function(resolve, reject) {
ws = new WebSocket("ws://------.---:3005");
});
Результат в консоли chrome / firefox:
comm.js:12 WebSocket connection to 'ws://------.---:3005/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
Я думаю, что эта ошибка возникает, когда я создал новый виртуальный хост, может ли он заблокировать веб-сокет?
tcp 0 0 : 3000 *: СЛУШАТЬ lemazo 1262011 17306 / узел
Я изменил порт 3005 на 3000 во всех файлах, у меня есть узел на netstat -alptue
Вы (как клиент) находитесь за прокси?
Ой ! Да я не думал об этом ... Вы правы, я за прокси, который у меня на смартфоне работает. Спасибо !



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Запустите команду netstat, чтобы убедиться, что порт 3005 привязан к процессу узла.