TsgcHTTP2Client › Methoden › Trace
Führt eine synchrone HTTP/2-TRACE-Anfrage durch, die zum Debuggen des Anfragepfads zwischen Client und Server verwendet wird.
function Trace(Const aURL: string): string;
| Name | Typ | Beschreibung |
|---|---|---|
aURL | const string | Absolute Ziel-URL. Die Anfrage-Header (möglicherweise von Proxys auf dem Pfad verändert) werden vom Origin-Server zurückgespiegelt. |
Antwort-Body, der die zurückgesendete Anfrage enthält, als message/http-Dokument. (string)
TRACE führt einen Nachrichten-Loop-Back-Test durch: der Server antwortet mit genau der Request-Zeile und den Headern, die er empfangen hat, was es nützlich macht, um zu diagnostizieren, welche Proxys oder Gateways den Verkehr verändern. Viele Server deaktivieren TRACE aus Sicherheitsgründen, seien Sie also darauf vorbereitet, 405 Method Not Allowed zu empfangen.
vEcho := oClient.Trace('https://api.example.com/diag');
procedure Trace(Const aURL: string; const aResponseContent: TStream);
| Name | Typ | Beschreibung |
|---|---|---|
aURL | const string | Absolute URL, die mit der TRACE-Anfrage adressiert werden soll. |
aResponseContent | const TStream | Stream, der den zurückgegebenen message/http-Antworttext erfasst. |
Stream-basierte Überladung. Praktisch, wenn die zurückgespiegelte Anfrage lang ist (zum Beispiel wenn viele Proxy-via-Header hinzugefügt wurden) und Sie sie zur späteren Analyse auf der Festplatte oder in einem Speicherpuffer persistieren möchten.
oOut := TFileStream.Create('trace.log', fmCreate);
try
oClient.Trace('https://api.example.com/diag', oOut);
finally
oOut.Free;
end;