Я написал небольшое приложение Node.js, используя connect
, которое обслуживает веб-страницу, а затем отправляет ей регулярные обновления. Он также принимает и записывает пользовательские наблюдения в файл на диске.
Он работает нормально, пока я нахожусь на локальном хосте, но я не могу заставить другие компьютеры в той же интрасети его увидеть. Я использую порт 3000, но переход на порт 8080 или 80 не помог.
Вот код, который я использую для установки соединения:
var io = require('socket.io'),
connect = require('connect');
var app = connect().use(connect.static('public')).listen(3000);
var chat_room = io.listen(app);
Как указано выше, я попытался изменить номер порта на 8080 или на 80 и не заметил никакой разницы, поэтому я не думаю, что это проблема брандмауэра (но я могу ошибаться). Я также подумал, прочитав аналогичные вопросы, касающиеся HTTP, добавить 0.0.0.0 к методу listen()
, но похоже, что listen()
не принимает параметр маски IP.
listen()
в Connect по существу обертывает _ 2_, который по умолчанию принимает соединения со всех IP-адресов (хост 0.0.0.0), так что это должно быть проблема. - person Miikka   schedule 26.12.2012