https://fiddler.kr.uptodown.com/windows
Fiddler
피들러는 http 통신이 pc내에서 오고가는 것을 모두 그대로 보여주는 프로그램이다. 단순히 통신이 오고가는 것(트래픽)을 보는 용도로 쓸 수 있지만 아래와 같은 용도로도 사용할 수 있다.1. http traffic 캡처기능을 통해 프로토콜의 형식을 알아볼 수 있다.
예전에 c++의 소켓 프로그래밍으로 직접 http 통신을 하려 했었다. 프로토콜의 방식과 원리를 알려주는 블로그나 싸이트들은 많았지만 정확한 프로토콜의 형식, 어떤 데이터를 어떤 문법에 맞춰 보내야하는지 자세히 나온 글을 찾아보기가 매우 힘들었다. Fiddler는 웹사이트의 서버로 제출되는 http의 데이터를 직접적으로 보여주기 때문에 소켓 프로그래밍을 작성하는데 많은 도움이 됐다.데이터 보는 방법 :
1. 먼저 F12 를 눌러 capture traffic 동작을 시작한다. 동작이 진행되면 위 그림 처럼 Capturing 이라고 왼쪽 아래에 텍스트가 뜬다.
2. 그 후 오른쪽 화면에 Log, Filters, Timeline, Statistics, Inspectors 등등 여러 탭이 있는데 거기서 Inspectors 탭에 들어간다.
3. 탭에 들어가게 되면 바로 아래에 또 Headers, TextView, SyntaxView 등 여러 탭이 생기는데 거기서 Raw 탭에 들어긴다.
4. 바로 아래 연한 파란색 화면에 뜬 것이 프로토콜의 데이터이다.
위를 통해 프로토콜에 대해서 공부할 수도 있으며 웹 크롤러를 만들 때 필요한 쿠키 정보나 여러 http의 헤더정보를 위 프로그램을 통해 손쉽게 얻을 수 있어 편리하다.
2. breaking point를 통해 request 요청전 데이터 값을 변조할 수 있다.
이 부분에서는 굳이 Fiddler로 변조를 하지 않고 파이썬의 urllib 모듈을 통해 직접 http의 데를 변경해 요청할 수 있다. 그치만 코드를 작성해야 한다는 번거로운 점이 있어 즉흥적으로 사용할 때 매우 유용한 기능이라 볼 수 있다.breaking point 잡는 2가지 방법 :
1. 상단 메뉴중에 Rules(규칙) 메뉴를 클릭하고 하위 메뉴에서 Automatic Breakpoints클릭, Before Requests 를 선택한다.
2. F11을 누른다. ( breakpoints를 해체 하려면 shift + F11을 누르면 된다.)
breakpoints를 잡으면 위 그림처럼 좌측 하단에 이상한 빨간 아이콘이 뜨게 되니 참고한다.
데이터 값을 변조하는 방법 :
breakpoints를 잡고 나면 모든 트래픽(http 형식으로 서버에 데이터를 요청 하는 것)들이 피들러에 의해 중단된다.
그러면 사용자가 1.에서 설명한 Inspectors/Raw 탭에 들어가 데이터 값들을 수정할 수 있다.
수정이 다 끝난 후 화면 중간에 Run to complete이라는 초록색 버튼을 누르면 트래픽이 정상적으로 서버로 보내진다.
댓글 없음:
댓글 쓰기