TsgcWSPClient_WAMP › Events › OnBinary
Wywoływane, gdy serwer wysyła binarną ramkę WebSocket, która nie jest częścią standardowego protokołu WAMP v1 tekstowego.
property OnBinary: TsgcWSBinaryEvent;
// TsgcWSBinaryEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream) of object
—
WAMP v1 to protokół JSON-over-text, dlatego ramki binarne nie są częścią specyfikacji. Ta procedura obsługi udostępnia wszelkie binarne ładunki, które serwer może wysyłać z powodów specyficznych dla aplikacji (przesyłanie plików, niestandardowe rozszerzenia, telemetria pozapasmowa). Pozycja strumienia wynosi zero na wejściu, a bufor jest własnością komponentu — bajty należy skopiować z parametru Data przed powrotem z procedury obsługi.
procedure TForm1.WAMPBinary(Connection: TsgcWSConnection;
const Data: TMemoryStream);
var
vBytes: TBytes;
begin
SetLength(vBytes, Data.Size);
Data.ReadBuffer(vBytes[0], Data.Size);
Memo1.Lines.Add(Format('binary frame: %d bytes', [Length(vBytes)]));
end;