모의 응답
Chute는 일치하는 HTTP/HTTPS 요청에 모의 데이터를 반환할 수 있습니다. 복호화된 HTTP/2 스트림의 경우 요청을 전달하지 않고 모의 응답을 로컬에서 답변합니다. HTTP/1.1 요청(일반 프록시 및 MitM HTTP/1.1)의 경우 요청은 여전히 실제 서버로 전송되며, 실제 응답이 클라이언트에 도달하기 전에 모의 데이터로 교체됩니다. 이는 테스트, 개발 또는 사용자 정의 응답으로 원치 않는 콘텐츠를 차단하는 데 유용합니다.
모의 규칙은 [Map Local] 섹션에 정의됩니다.
요청당 하나의 모의 규칙만 적용됩니다 — URL 패턴이 일치하는 첫 번째 규칙이 사용됩니다.
Map Local 형식
로컬 파일 또는 base64로 인코딩된 콘텐츠로 모의 응답을 제공하는 경우:
[Map Local]
^https://example\.com/api.* data="/path/to/mock-response.json"
^https://example\.com/page.* data="/path/to/page.html" header="SGVhZGVyOiBWYWx1ZQ=="
^https://example\.com/pixel.* base64="R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
알림: URL 정규식은 요청 URL의 일부 문자열이 아니라 전체 요청 URL과 일치해야 합니다. 패턴은 일반적으로
.*로 끝나야 임의의 경로와 쿼리 문자열을 가진 URL과 일치합니다.
Map Local 매개변수
| 매개변수 | 설명 |
|---|---|
data="/path/to/file" |
응답 본문으로 제공할 파일 경로입니다. 요청 시점에 파일을 읽습니다. |
base64="<encoded>" |
Base64로 인코딩된 응답 본문 콘텐츠입니다. |
header="<base64>" |
Base64로 인코딩된 사용자 정의 응답 헤더입니다(Key:Value\n 형식). |
data=또는base64=중 하나 이상을 지정해야 합니다.알림:
header=를 파싱할 때 모든 공백이 제거되며, 각 줄은 정확히 하나의 콜론을 가진Key:Value형식이어야 합니다. 값 자체에 콜론이 포함된 헤더(예: URL)는 조용히 삭제되고, 값 안의 공백은 손실됩니다.
템플릿 변수
data= 또는 base64= 사용 시, 응답 본문은 템플릿 변수 대체를 지원합니다:
| 변수 | 대체 값 |
|---|---|
{{url}} |
전체 요청 URL 경로 |
{{host}} |
요청 호스트명 |
{{path}} |
상대 URL 경로 |
{{method}} |
HTTP 메서드 |
{{ua}} |
User-Agent 헤더 값 |
예시 모의 응답 파일 (response.json):
{
"requested_url": "{{ "{{url}}" }}",
"host": "{{ "{{host}}" }}",
"method": "{{ "{{method}}" }}"
}
참고: HTTPS 요청의 경우, 일치하는 호스트명에 대해 MitM 복호화가 활성화되어야 합니다. MitM이 없는 HTTPS 트래픽에 대한 모의 규칙은 무시됩니다.
이 페이지는 영어판의 번역본입니다. 내용이 다를 경우 영어판이 우선합니다.