2013-03-08 2 views
0

Я сделал свой личный проект с помощью WebSocket.Есть ли способ переключить соединение с другим сервером TCP?

Я уже знаю, что WebSocket не будет подключать напрямую raw Socket Socket.

Итак, я подумал, что если сначала подключиться к веб-серверу (NodeJS), а затем переключиться на TCP-сервер.

Возможно ли подключиться к другому серверу с помощью NodeJS?

Если это так.

Пожалуйста, позвольте мне быть счастливым .. Спасибо! хорошего дня.

+1

Что вы спрашиваете? У вас есть клиент WebSockets, подключенный к серверу Node.js, и вы хотите подключить клиента к совершенно другому серверу или к тому же серверу другого порта? Какие? – Brad

+1

После того, как начальный HTTP-квитирование и заголовок Upgrade, соединение с websocket является сырым TCP-соединением. –

+0

@Brand Да! Я хочу переключить клиентское соединение на совершенно другой TCP-сервер, а не на HTTP-сервер, – Notice

ответ

1

Я предполагаю, что это может быть как возможным, так и простым для туннельного/прокси-трафика TCP. Дизайн высокого уровня будет:

  • Запуск веб-сервер с интегрированным сервером WebSocket (использование Socket.io, на самом деле)
  • Когда клиент устанавливает соединение WebSocket, создать вверх по течению соединения TCP для вашего целевого сервера
  • Затем сделайте полную двунаправленную обвязку сообщений между браузером < -> гнездом узла и узлом < -> otherServer гнездо

Дьявол может быть в деталях. Я не пробовал, но кажется выполнимым.

Существует node project called ws-tcp-bridge, а также python project, которые утверждают, что сделали это уже. Ни luke ужасно зрелые, но они могут просто работать или, по крайней мере, служить хорошим справочным материалом.

+0

Спасибо за ответ! Я думаю, что это тоже было бы хорошим решением, Однако, если есть другой способ, я хочу взять его , На самом деле не существует полного решения по этому вопросу? – Notice

Смежные вопросы