2015-02-05 11 views
1

C# Web Browser 컨트롤과 Fiddler Core를 통합하려고합니다. Fiddler Core가 인터넷 익스플로러 나 다른 인터넷 브라우저에 영향을주지 않고 웹 브라우저 컨트롤을 듣도록함으로써이 작업을 수행하지 않을 것입니다.C# 및 FiddlerCore를 사용하여 특정 응용 프로그램 청취

아래의 그림은 내가 무엇을 달성하고자하는 표시해야합니다 : 아래

Internet Explorer -> Internet 
Chrome -> Internet 
Other Browsers -> Internet 
Web Browser Control (Custom C# App) -> Fiddler Core -> Internet 

네 개의 인스턴스가 다른 브라우저를 방해 피들러 코어없이 병렬로 실행해야합니다. 따라서 사용자 정의 앱에서 응답 HTML을 변경하지 않더라도 다른 브라우저에는 영향을 미치지 않습니다.

나는 Google에서 잠시 동안 검색을 해왔지만, 아직 시작하지 못한 구체적인 예를 볼 수 없습니다.

미리 감사드립니다. 도움을 주시면 대단히 감사하겠습니다.

답변

3

FiddlerCore는 각 세션의 X-ProcessInfo 플래그에서 호출 프로세스 정보를 노출합니다.

기본적으로 FiddlerCore는 시스템 프록시로 등록되며 대부분의 응용 프로그램은 트래픽을 자동으로 라우팅합니다. 당신은 단지 하나의 응용 프로그램에서 트래픽을 캡처하려면

이 단계는 다음과 같습니다 .Startup를 호출 할 때

  1. 시스템 프록시로 등록하지 마십시오.
  2. 대상 응용 프로그램의 프록시 설정은 FiddlerCore의 포트를 가리켜 야합니다.

이제 # 1은 간단하지만 # 2는 더 어렵고 대상 응용 프로그램이 사용하는 네트워킹 코드에 전적으로 달려 있습니다. 대상 응용 프로그램은 .NET Web Browser 컨트롤 (IE 만 해당)을 호스팅하는 사용자 지정 C# 응용 프로그램이라고 언급했습니다. 그런 경우, 응용 프로그램은 또한 FiddlerCore를 호스팅하는 경우, 당신은 필요한 경우에만 응용 프로그램의 내부에 ...

Fiddler.URLMonInterop.SetProxyInProcess("127.0.0.1:8889", String.Empty);

를 호출합니다.

+0

안녕하세요 @EricLaw 응답 해 주셔서 감사합니다.이 기사를 시작하는 데 사용할 수있는 코드 스 니펫을 알고 계십니까? 감사합니다! – arvstracthoughts

+1

@arvstracthoughts : 귀하의 질문을 이해할 수 없습니다 - 내 답변에는 FiddlerCore 인스턴스로 트래픽을 전송하는 데 사용하는 코드 스 니펫이 정확히 포함되어 있으며 FiddlerCore 자체에는 FiddlerCore 사용 방법을 보여주는 데모 프로그램이 일반적으로 제공됩니다. (참고 : StackOverflow에서 새로운 질문은 댓글이 아닌 새로운 질문으로 열어야합니다.) – EricLaw

+0

안녕하세요 @EricLaw, 오해 한 것에 대해 사과드립니다. 이미 작동하고 있습니다. 또한 답변 (https://groups.google.com/forum/#!msg/httpfiddler/NOxnktF8R0s/Iu1SJbf-d1wJ)을 발견했습니다.), [여기] (https://groups.google.com/forum/#!topic/httpfiddler/kkirFaUbeHw) 및 [여기] (https://groups.google.com/forum/#!topic/httpfiddler/10GtCA3HmHI). – arvstracthoughts