2017-01-13 1 views
0

Мне нужно обрабатывать HTTP-запросы и соединения WebSocket на одном порту 80 с помощью моей собственной службы Windows..NET-библиотека, которая может переключать сокет с HTTP на протокол WebSocket

Итак, я понимаю: HTTP-соединение должно быть переключено на протокол WebSocket по требованию клиента с заголовком запроса обновления.

Вопрос: Есть ли какая-либо серверная библиотека, которая может обрабатывать HTTP-запросы в сокете и может переключать сокет на WebSocket по запросу?

Или могут быть какие-либо другие решения для автономного применения/обслуживания?

+0

SignalR ??????? – NickD

+0

это только IIS. не решение для меня. – scazy

+1

https://www.asp.net/signalr/overview/deployment/tutorial-signalr-self-host – NickD

ответ

0

Вы можете использовать порт прокси-сервера TCP для разделения трафика между двумя целями. Например, весь трафик будет поступать на порт 80, но затем HTTP-трафик будет маршрутизироваться внутри страны до 8001 и WS-трафика до 8002. https://github.com/lifeemotions/websocketproxy

+0

с вашим решением приложение должно открыть 3 порта TCP и перенаправить трафик на себя. это правильно? – scazy

+0

Вы настраиваете websocketproxy на порт http, запускаете приложение http на порту 8081 и приложение websocket на порт 8082. Websocketproxy автоматически отправляет трафик в нужное место (http или ws). – Svekke

+0

Мне нужно использовать услугу «все-в-одном» и Я пытаюсь устранить избыточные элементы. – scazy