Tyrus Websockets: биты RSV установлены неправильно - PullRequest
0 голосов
/ 04 февраля 2020

Я пытаюсь настроить сервер веб-сокетов в java, используя tyrus, подключаясь к нему через веб-сайт, открытый в firefox. Я использую localhost для IP-адреса. Соединение установлено нормально, но как только я пытаюсь отправить сообщение через сервер, немедленно отключается по следующей причине:

1002,RSV bit(s) incorrectly set.

Я не переопределил никаких настроек по умолчанию, просто настроил сервер и подключился к этому. Я выложу некоторый код, если он уместен:

java сервер

Server server = new Server("localhost", 8000, "/", null, BridgeEndpoint.class);
server.start();

...

@ServerEndpoint(value="/producer")
public class BridgeEndpoint {

    ...

    @OnMessage
    public void onMessage(Session session, Message message) {
        System.out.println("message");
        message.setFrom(users.get(session.getId()));
        broadcast(message);
    }

    @OnClose
    public void onClose(Session session, CloseReason reason)  {
        chatEndpoints.remove(this);
        Message message = new Message();
        message.setFrom(users.get(session.getId()));
        message.setContent("Disconnected! " + reason);
        broadcast(message);
        System.out.println("Disconnected! " + reason);
    }

    ...

}

javascript клиент

let socket = new WebSocket("ws://localhost:8000/producer");
socket.send("Hello world!");
...