Node.js - изоморфный сервер TCP / Websocket на том же порту - PullRequest
0 голосов
/ 27 ноября 2018

Я спрашиваю, возможно ли создать бэкэнд в node.js, который имеет тот же API, но совместим протоколы TCP и WebSocket, на одном и том же порту?Я знаю, что Websocket основан на TCP, но имеет некоторые высокоуровневые предварительные условия и ничего не нашел по этому вопросу.

Спасибо всем

1 Ответ

0 голосов
/ 27 ноября 2018

Это может быть возможно в зависимости от протокола, но это будет хлопотно.Вам придется подключить HTTP-сервер (поверх которого расположены веб-сокеты) и перетасовать данные в отдельный обработчик, если он окажется недействительным HTML.

Это может привести к ошибкам.HTTP имеет множество крайних случаев, которые вам необходимо учитывать.Альтернативный протокол должен быть либо достаточно различным для быстрой идентификации, либо фактически совместимым с HTTP, чтобы иметь собственный путь обновления протокола.

Related: Overriding Node.js HTTP parser

...