目前MessageHandler.Whole<byte[]>
仅在消息实际上只有字节时激活。
只在字节到达时激活
@Override
public void onMessage(byte[] message) { ... }
是否有可能获得原始消息(WebSocket不应该检查它是否是字符串),即使它实际上是文本数据?这样做的原因是,当解析原始字节而不是字符串时,它将提供一些性能优势。
您提供的签名…
public void onMessage(byte[] message)
用于WebSocket消息发送为BINARY,而不是TEXT。
根据各种规范(包括协议规范:RFC6455和javax。websocket规范:JSR-356), TEXT消息有强制的UTF8验证要求。
如果你想发送没有这个UTF8验证要求的字符串,那么将它们作为二进制WebSocket消息发送。