Proxyman Breakpoint로 HTTP 요청/응답 수정하기
이 짧은 튜토리얼에서는 Breakpoint 도구로 HTTP 요청(HTTP 메서드, 스킴, 호스트, 포트, 경로, 쿼리)을 수정하는 방법을 보여드립니다.
Breakpoint 도구
Breakpoint 도구는 Proxyman에서 가장 많이 사용되는 기능 중 하나입니다. 클라이언트의 로직을 바꾸지 않고도 요청과 응답 데이터를 즉시 수정할 수 있게 해 줍니다.
다음 목록에서 할 수 있는 작업을 모두 확인할 수 있습니다:
- 요청 URL 수정: 스킴, 호스트, 경로, 포트, HTTP 메서드 포함 (Proxyman 2.35.4 이상에서 사용 가능)
- 요청/응답의 HTTP 헤더 수정
- 요청의 Query 또는 Form 항목 수정
- Authorization/Cookie/Set-Cookie 헤더 수정
- 요청/응답의 HTTP Body 수정
- 응답의 HTTP 상태 코드 변경
응답 수정하기
응답 데이터(헤더, 상태 코드, Body 포함)를 수정하려면 다음 튜토리얼을 따라 해 보세요: Breakpoint로 iOS 앱의 요청/응답을 가로채고 수정하기
GraphQL 요청 수정하기
Proxyman에서는 GraphQL 요청의 특정 QueryName에 Breakpoint를 설정할 수 있습니다. GraphQL 문서를 참고하세요.
URL 요청 수정하기
Proxyman 2.35.4부터는 (HTTP 메서드, 스킴, 호스트, 포트, 경로, 쿼리)를 손쉽게 수정할 수 있으며, 이 블로그에서는 이 기능에 집중하겠습니다.
1. Breakpoint 규칙 만들기
Breakpoint 규칙을 만들려면 먼저 요청을 보내세요. 그런 다음 해당 요청을 마우스 오른쪽 버튼으로 클릭 → Tools → Breakpoint를 선택하세요.

Proxyman은 모든 데이터가 미리 채워진 Breakpoint Rule Creation 화면을 표시합니다. 필요하면 값을 바꿔도 되고, CMD+Return을 눌러 바로 규칙을 만들어도 됩니다.

2. URL 수정하기
이제 요청을 다시 보내면 Proxyman이 요청을 멈추고, 요청 내용을 수정할 수 있는 Breakpoint 창을 표시합니다.
아래 스크린샷에서 보듯이 URL 텍스트 필드에서 HTTP 메서드, 스킴, 호스트, 포트, 경로, 쿼리를 자유롭게 바꿀 수 있습니다.

원하는 대로 수정했다면 Execute 버튼을 클릭하거나 CMD+Return 단축키로 실행하세요.
반대로 요청을 취소하거나 중단할 수도 있습니다.
다음 단계
Breakpoint를 사용하면 요청과 응답을 즉석에서 수정할 수 있지만, 수동 작업이 많이 필요합니다.
자동화하고 싶다면 다음을 살펴보세요:
- Map Local: 로컬 파일을 응답으로 자동 매핑합니다.
- Scripting: JavaScript 코드로 요청과 응답을 강력하게 조작할 수 있습니다. 일반적인 작업은 Snippet Code에서 확인할 수 있습니다.
Breakpoint 규칙에는 호스트와 경로를 좁게 지정해서, 관련 없는 요청이 멈추지 않도록 하세요. 반복해서 하는 변경이라면 Breakpoint Template으로 같은 값을 다시 채울 수 있습니다. 한 호스트의 모든 요청을 다른 환경으로 보내는 것이 목적이라면, 라우팅 변경을 자동으로 적용하는 Map Remote가 보통 더 쉽습니다.
Proxyman은 개발자가 HTTP(S) 요청과 응답을 손쉽게 캡처하고, 검사하고, 조작할 수 있게 해 주는 네이티브 고성능 macOS 앱입니다.
https://proxyman.com에서 받아보세요.
