TsgcHTTP2Client › Olaylar › OnHTTP2ResponseFragment
FragmentedData verileri geldikçe teslim ettiğinde, akışla gelen her yanıt parçası için tetiklenir.
property OnHTTP2ResponseFragment: TsgcHTTP2ClientResponseFragmentEvent;
// TsgcHTTP2ClientResponseFragmentEvent = procedure(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const Request: TsgcHTTP2RequestProperty; const Fragment: TsgcHTTP2ResponseFragmentProperty) of object
—
OnHTTP2ResponseFragment, kısmi bir yanıt paketi her alındığında tetiklenir, böylece stream, tüm yükü beklemek yerine baytlar geldikçe işlenebilir. Genellikle uzun ömürlü veya chunked HTTP/2 stream'leriyle (örneğin olay stream'leri veya clockstream tarzı uç noktalar) kullanılır ve FragmentedData değerini h2fdAll (son paket geldiğinde OnHTTP2Response da tetiklenir) veya h2fdOnlyFragmented (yalnızca bu olay gönderilir) olarak ayarlayarak etkinleştirilir. Fragment parametresi, kısmi yükü Data, DataString ve DataUTF8 aracılığıyla gösterir; Request parametresi kaynak isteği tanımlar.
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;