API - это целые двоичные сообщения.
Причина смещения / длины в том, что байтовые буферы выделяются до того, как станет известна вся общая длина всего сообщения веб-сокета.
Таким образом, отправляемый вам байтовый буфер часто больше, чем сообщение.
Если вам нужны частичные сообщения, вам нужно знать флаг "fin" (final).
Для частичного двоичного кода вы должны использовать интерфейс WebSocketPartialListener
и использовать метод ...
onWebSocketPartialBinary(java.nio.ByteBuffer payload, boolean fin)