TsgcQUICClient › Methoden › WriteStreamData
Schreibt Anwendungsbytes in einen bestimmten QUIC-Stream, der mit OpenStream geöffnet wurde.
procedure WriteStreamData(const aStream: TsgcQUICClientStream; const aData: TBytes);
| Name | Typ | Beschreibung |
|---|---|---|
aStream | const TsgcQUICClientStream | Der Ziel-Stream, der zuvor von OpenStream zurückgegeben oder über OnQUICStreamData empfangen wurde. Darf kein vom Peer geöffneter unidirektionaler Stream sein, in den der Client nicht schreiben kann. |
aData | const TBytes | Rohe Bytes, die über den Stream gesendet werden sollen. |
WriteStreamData sendet die übergebenen Bytes über einen bestimmten QUIC-Stream anstelle des Standard-Streams. Der Aufruf wird stillschweigend ignoriert, wenn keine aktive Verbindung besteht oder wenn SSLQUIC False ist, sodass kein Fehler gemeldet wird, wenn Sie ihn vor dem Verbinden aufrufen.
Öffnen Sie den Stream mit OpenStream auf einer bestehenden Verbindung, nachdem Sie zuvor EnableMultiStream aufgerufen haben. QUIC liefert jeden Stream in der richtigen Reihenfolge und unabhängig von den anderen aus, sodass ein verlorenes Paket auf einem Stream die übrigen nicht verzögert. QUIC bewahrt keine Nachrichtengrenzen der Anwendung, wenn Ihr Protokoll also ein Framing benötigt, müssen Sie es selbst hinzufügen, der Peer liest Ihre Bytes möglicherweise in unterschiedlich großen Blöcken zurück.
Um stattdessen über den Standard-Stream zu senden, verwenden Sie WriteData.
Dieses Member ist derzeit nur in der Delphi/C++Builder-Implementierung verfügbar und erfordert die integrierte OpenSSL-QUIC-Engine.
var
oStream: TsgcQUICClientStream;
begin
oClient.EnableMultiStream;
oStream := oClient.OpenStream;
if Assigned(oStream) then
oClient.WriteStreamData(oStream, TEncoding.UTF8.GetBytes('Hello QUIC'));
end;