我正在尝试将PongMessage从Web套接字客户端发送到服务器(您可能会说心跳消息)。

在服务器中,我在带有@ServerEndpoint的类中编写了这样的方法:

@OnMessage
        public void onPong(PongMessage pongMessage, Session session) {

          LOGGER.log(Level.INFO, " -- Got Hit Yaay!! -- ");

                try {
                    session.getBasicRemote().sendText(PONG_RECEIVED);
                } catch (IOException e) {
                    e.printStackTrace();
                }

        }


PongMessage根据oracle文档接受ByteBuffer。我尝试在服务器中生成字节缓冲区,并从套接字客户端发送完全相同的生成字节缓冲区值。服务器仍然抛出异常,提示它无法解码字符串。

我无法点击onPong() method。客户端可以将pongmessage发送给websocket服务器的任何格式,以便调用onPong()方法吗?我在这里做错了什么?有任何想法吗 ?

最佳答案

我发现旧的post应该由浏览器处理Ping / Pong消息。如果这仍然是正确的(我不确定),那么您应该转向“自定义”解决方案:不要使用PongMessage。接收您定义的一些JSON。

07-25 22:41