Я новичок в Node.js, и в настоящее время у меня есть проблема с правильной работой mean.js + socket.io.
Короче говоря, клиент не получает события, генерируемые обработчиком on('connection',...)
, но получает другие события.
Чтобы продемонстрировать свою проблему, я воспроизвел ее на базовом приложении mean.js.
Действия по воспроизведению:
установить mean.js:
npm install -g генератор-meanjs
йо означаетЗамените server.js на этот https://gist.github.com/Nihaux/c02d61f6572d6531b60c ( настроить socket.io)
Замените app/views/layout.server.view.hmtl на этот https://gist.github.com/Nihaux/05041ff4a33f0f5c7508 (запустить socket io и добавить ссылку для отправки события)
Необязательная строка комментария 67 в config/express.js для отключения экспресс-логгера (слишком много шума).
Запустите DEBUG=socket* node server.js
В google-chrome откройте панель отладки, на вкладке сети фильтр веб-сокетов
Перейдите на локальный хост: 3000. Должен появиться веб-сокет: на вкладке фрейма у меня есть 5
3probe
2probe
=> я должен был получить сообщение «привет»Прокрутите страницу вниз и нажмите "ПРОВЕРИТЬ МЕНЯ"
после обновления вкладки фрейма (щелкнув другую вкладку, а затем вернувшись на вкладку фрейма). Я вижу:
42["test:received",{ "data":"test"}] ==> сообщение, которое сервер отправил мне в ответ
42["test"] ==> сообщение, которое я отправил
5
3probe
2probe
Пожалуйста, может кто-нибудь заметить, что я делаю неправильно?
РЕДАКТИРОВАТЬ: на самом деле клиент получает событие, но google-chrome не показывает его на панели фрейма.