TsgcHTTP2ClientEventos › OnHTTP2ResponseFragment

OnHTTP2ResponseFragment Evento

Disparado para cada fragmento de resposta transmitido quando FragmentedData entrega dados à medida que chegam.

Sintaxe

property OnHTTP2ResponseFragment: TsgcHTTP2ClientResponseFragmentEvent;
// TsgcHTTP2ClientResponseFragmentEvent = procedure(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const Request: TsgcHTTP2RequestProperty; const Fragment: TsgcHTTP2ResponseFragmentProperty) of object

Valor Padrão

Observações

OnHTTP2ResponseFragment é gerado toda vez que um pacote de resposta parcial é recebido, para que o stream possa ser processado assim que os bytes chegam, em vez de esperar pela carga útil inteira. Normalmente é utilizado com streams HTTP/2 de longa duração ou em chunks (por exemplo, event streams ou endpoints estilo clockstream) e é habilitado definindo FragmentedData como h2fdAll (também gera OnHTTP2Response quando o último pacote chega) ou h2fdOnlyFragmented (apenas este evento é despachado). O parâmetro Fragment expõe a carga útil parcial por meio de Data, DataString e DataUTF8; o parâmetro Request identifica a requisição de origem.

Exemplo


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;

Voltar para Eventos