TsgcHTTP2Client메서드 › Trace

Trace 메서드

클라이언트와 서버 간의 요청 경로를 디버그하는 데 사용되는 동기 HTTP/2 TRACE 요청을 수행합니다.

Overloads

오버로드 1

구문

function Trace(Const aURL: string): string;

Parameters

NameType설명
aURLconst string대상으로 할 절대 URL입니다. (경로상의 프록시에 의해 잠재적으로 수정된) 요청 헤더가 origin 서버에 의해 다시 에코됩니다.

반환 값

message/http 문서로 에코된 요청을 포함하는 응답 본문입니다. (string)

설명

TRACE는 메시지 루프백 테스트를 수행합니다. 서버가 수신한 정확한 요청 라인과 헤더로 응답하므로, 어떤 프록시나 게이트웨이가 트래픽을 변경하는지 진단하는 데 유용합니다. 많은 서버가 보안상의 이유로 TRACE를 비활성화하므로 405 Method Not Allowed를 수신할 수 있음을 대비하십시오.

예제

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

Overload 2

구문

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

Parameters

NameType설명
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;

메서드로 돌아가기