делает розетку.сервер ввода-вывода должен быть отделен от серверной части при развертывании?

#node.js #reactjs #express #socket.io

#node.js #реагирует на #экспресс #socket.io

Вопрос:

Я создаю приложение react. У меня есть папка клиента и внутренняя папка, в которой содержатся все мои модели базы данных mongo, маршруты, функции и т. Д…

Я знаю, что понимаю, что мое приложение должно использовать socket.io

Мой интерфейс находится на локальном хосте:3000, а мой сервер-на локальном хосте:5000

Насколько я понимаю, это гнездо.io нужен свой собственный порт.

Означает ли это, что при развертывании в heroku мне нужно развернуть внутренний сервер, внешний сервер и сокет.сервер ввода-вывода?

Ответ №1:

Насколько я понимаю, это гнездо.io нужен свой собственный порт.

Это неверно. разъем.io может использовать тот же порт, что и ваш сервер, просто отлично. Входящие запросы на создание сокета.подключение ввода-вывода можно отличить от других веб-запросов с помощью пользовательского заголовка, используемого базовым протоколом подключения WebSocket. Это позволяет socket.io/webSocket и ваш http-сервер должен использовать один и тот же порт.

Означает ли это, что при развертывании в heroku мне нужно развернуть внутренний сервер, внешний сервер и сокет.сервер ввода-вывода?

Нет. У вас все еще может быть просто внешний сервер и серверный сервер, и серверный сервер может обрабатывать как ваши внутренние запросы, так и сокет.подключения ввода-вывода.

Комментарии:

1. Спасибо jfriend00 за то, что нашли время объяснить это. Очень признателен