TsgcHTTP3Client › Eventos › OnAltSvc
É disparado quando o servidor retorna um cabeçalho Alt-Svc anunciando serviços alternativos.
property OnAltSvc: TsgcAltSvcEvent;
// TsgcAltSvcEvent = procedure(Sender: TObject; const aEntries: TsgcAltSvcList) of object
| Name | Type | Descrição |
|---|---|---|
Sender | TObject | O cliente que recebeu o header Alt-Svc. |
aEntries | TsgcAltSvcList | Lista analisada de serviços alternativos anunciados. Cada entrada expõe Protocol, Host, Port, MaxAge e Persist. |
—
OnAltSvc é gerado quando uma resposta contém um header alt-svc (RFC 7838), por meio do qual um servidor anuncia que a mesma origem também é acessível por outro protocolo, host ou porta, por exemplo um endpoint HTTP/3 descoberto enquanto conectado via HTTP/2. O header é analisado em um TsgcAltSvcList e cada TsgcAltSvcEntry descreve um serviço alternativo: o ALPN Protocol (como h3), o Host e a Port, o tempo de vida de atualização MaxAge em segundos e o sinalizador Persist. Use o evento para armazenar em cache o endpoint anunciado e direcionar requisições posteriores para ele. Uma diretiva de limpeza (alt-svc: clear) não dispara o evento.
procedure OnAltSvcEvent(Sender: TObject; const aEntries: TsgcAltSvcList);
var
i: Integer;
begin
for i := 0 to High(aEntries) do
Log(aEntries[i].Protocol + ' @ ' + aEntries[i].Host + ':' + IntToStr(aEntries[i].Port));
end;