Spark Java: Как настроить Se c -WebSocket-Protocol в ответ на запрос на обновление websocket - PullRequest
0 голосов
/ 25 марта 2020

TL; DR : есть ли способ установить заголовок Sec-WebSocket-Protocol для ответа на обновление от обработчика, который я передаю методу webSocket в Spark Java?

Я пытаюсь реализовать WebSockify в Spark Java, чтобы я мог встроить его в более крупный проект, который я создаю. Моя цель - предоставить клиенту noVN C для некоторых пользователей требуемый протокол websockify.

В результате поиска я нашел и использовал https://github.com/syed/java-websockify, который сам по себе - работает с Firefox и Chrome с клиентом noVN C.

Когда я использую класс WsHandler (из java -websockify) в моем проекте Spark Java и передать его в webSocket метод Spark Java, с Firefox все работает нормально, но Chrome перестает работать.

Это потому, что в ответе отсутствует Sec-WebSocket-Protocol и Chrome жалуется на это.

Таким образом, мой вопрос состоит из двух частей, и если я отвечу на любой из них.

  1. Есть ли способ установить заголовок Sec-WebSocket-Protocol на ответ от обработчика, который я передаю методу webSocket в Spark Java? Это идеальное решение!
  2. Если первое не удается сделать, проблема сводится к следующему:

Класс WsHandler помечается @WebSocket, но также расширяет класс WebSocketHandler.

Переопределенный метод handle класса WebSocketHandler не вызывается при использовании Spark Java. Этот метод устанавливает требуемый заголовок Sec-WebSocket-Protocol.

Могу ли я что-нибудь с этим сделать?

Заранее спасибо за ваше время,

Панайотис

...