TsgcHTTP2Clientメソッド › Trace

Trace メソッド

クライアントとサーバー間の要求パスをデバッグするために使用される、同期HTTP/2 TRACE要求を実行します。

オーバーロード

オーバーロード 1

構文

function Trace(Const aURL: string): string;

パラメータ

名前タイプ説明
aURLconst stringターゲットの絶対 URL。リクエストヘッダー(パス上のプロキシによって変更される可能性あり)はオリジンサーバーによってエコーバックされます。

戻り値

エコーされたリクエストを message/http ドキュメントとして含むレスポンスボディ。(string

解説

TRACE はメッセージのループバックテストを実行します。サーバーは受信した正確なリクエストラインとヘッダーを返信するため、どのプロキシやゲートウェイがトラフィックを変更するかを診断するのに役立ちます。多くのサーバーはセキュリティ上の理由から TRACE を無効にしているため、405 Method Not Allowed を受信する可能性があります。

使用例

vEcho := oClient.Trace('https://api.example.com/diag');

オーバーロード 2

構文

procedure Trace(Const aURL: string; const aResponseContent: TStream);

パラメータ

名前タイプ説明
aURLconst stringTRACE リクエストの対象となる絶対 URL。
aResponseContentconst TStreamエコーされた message/http 応答ボディをキャプチャするストリーム。

解説

ストリームベースのオーバーロード。エコーされたリクエストが長い場合(例: 多数のプロキシviaヘッダーが追加された場合)で、後の分析のためにディスクまたはメモリバッファに永続化したい場合に便利です。

使用例

oOut := TFileStream.Create('trace.log', fmCreate);
try
  oClient.Trace('https://api.example.com/diag', oOut);
finally
  oOut.Free;
end;

メソッドに戻る