TsgcHTTP2Client › Events › OnHTTP2ResponseFragment
Se déclenche pour chaque fragment de réponse streamé lorsque FragmentedData livre les données à leur arrivée.
property OnHTTP2ResponseFragment: TsgcHTTP2ClientResponseFragmentEvent;
// TsgcHTTP2ClientResponseFragmentEvent = procedure(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const Request: TsgcHTTP2RequestProperty; const Fragment: TsgcHTTP2ResponseFragmentProperty) of object
—
OnHTTP2ResponseFragment est déclenché chaque fois qu'un paquet de réponse partielle est reçu, permettant au flux d'être traité dès l'arrivée des octets au lieu d'attendre la charge utile entière. Il est typiquement utilisé avec des flux HTTP/2 longs ou fragmentés (par exemple des flux d'événements ou des points de terminaison de type clockstream) et est activé en définissant FragmentedData à h2fdAll (déclenche également OnHTTP2Response lors de l'arrivée du dernier paquet) ou h2fdOnlyFragmented (seul cet événement est distribué). Le paramètre Fragment expose la charge utile partielle via Data, DataString et DataUTF8 ; le paramètre Request identifie la requête d'origine.
oClient := TsgcHTTP2Client.Create(nil);
oClient.OnHTTP2ResponseFragment := OnHTTP2ResponseFragmentEvent;
oClient.Get('https://http2.golang.org/clockstream');
procedure OnHTTP2ResponseFragmentEvent(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient;
const Request: TsgcHTTP2RequestProperty; const Fragment: TsgcHTTP2ResponseFragmentProperty);
begin
ShowMessage(Fragment.DataString);
end;