TsgcHTTP2Client › Metodi › Trace
Esegue una richiesta HTTP/2 TRACE sincrona utilizzata per eseguire il debug del percorso della richiesta tra client e server.
function Trace(Const aURL: string): string;
| Nome | Tipo | Descrizione |
|---|---|---|
aURL | const string | URL assoluto di destinazione. Gli header della richiesta (eventualmente modificati dai proxy lungo il percorso) verranno restituiti dal server di origine. |
Corpo della risposta contenente la richiesta con eco, come documento message/http. (string)
TRACE esegue un test di loop-back del messaggio: il server risponde con la riga di richiesta e le intestazioni esatte ricevute, rendendolo utile per diagnosticare quali proxy o gateway alterano il traffico. Molti server disabilitano TRACE per motivi di sicurezza, quindi è necessario essere preparati a ricevere 405 Method Not Allowed.
vEcho := oClient.Trace('https://api.example.com/diag');
procedure Trace(Const aURL: string; const aResponseContent: TStream);
| Nome | Tipo | Descrizione |
|---|---|---|
aURL | const string | URL assoluto da raggiungere con la richiesta TRACE. |
aResponseContent | const TStream | Stream che acquisisce il corpo della risposta message/http restituito in eco. |
Overload basato su stream. Comodo quando la richiesta echeggiata è lunga (ad esempio quando sono state aggiunte molte intestazioni proxy via) e si preferisce salvarla su disco o in un buffer di memoria per analisi successive.
oOut := TFileStream.Create('trace.log', fmCreate);
try
oClient.Trace('https://api.example.com/diag', oOut);
finally
oOut.Free;
end;