비동기 요청을 포함하여 웹 브라우저 컨트롤에서 모든 요청과 응답을 캡처하고 인쇄하는 방법이 있습니까?웹 브라우저 컨트롤에서 모든 요청과 응답 캡처?
답변
Fiddler에 대해 생각해 보셨나요? 그들은 심지어 이것을 위해 사용할 수있는 API을 가지고 있습니다.
편집
당신은 응답 정보를 얻기 위해 Navigated event 또는 LoadCompleted event를 사용하여 시도 할 수 있습니다. 요청 정보에 Navigating event을 사용할 수 있습니다. 이러한 이벤트는 비동기 요청에서 발생할 수 있지만 확실하지 않습니다.
편집은 역습
그럼 난 위의 이벤트를 사용하여 몇 가지 테스트를했고, 나는 아무것도 없어 걱정입니다. 그 사건들은 제가 사용할 수있는 어떤 것도주지 못했습니다. 그들은 webresponse 및 webrequest에 액세스 할 수 있었지만, 테스트에서는 항상 null/null이었습니다.
슬픈 현실은 웹 브라우저 컨트롤이 원하는 방식으로 사용되지 않았다는 것입니다. 웹 페이지/데이터를 제공하기위한 용도 일 뿐이며 데이터를 살펴볼 수있는 액세스 권한을 제공하지 않습니다. 나는 그들이 C.Y.A. 누군가가 악성 코드/스파이웨어 브라우저를 만들지 못하도록 조치하십시오.
가장 좋은 방법은 웹 브라우저를 피들러 (또는 다른 '스니핑'라이브러리)와 연결하는 것입니다.
이 작업을 수행하는 또 다른 방법은 사용자 자신의 Asynchronous Pluggable Protocol
처리기를 구현하는 것입니다.하지만 이것은 간단한 작업이 아닙니다. 기본적으로 APP는 Internet Explorer가 URLMON을 통해 URL에서 데이터를 다운로드하는 데 사용되는 메커니즘입니다. URLMON이 사용하는 기본 핸들러를 대체하는 APP를 구현하여 모든 요청과 응답을 제어 할 수 있습니다.
기본 처리기를 바꾸는 대신이 처리기를 랩핑하는 APP를 구현할 수도 있습니다. 일반적으로 언급되는 예제는 Igor Tandetnik이 만든 PassThroughAPP이며 이와 같은 방법으로 수행 할 수 있습니다. 이 코드 프로젝트 article에서 C# 구현을 찾을 수도 있습니다. 나는 당신이 가장 관심을 가질 인터페이스가 IHttpNegotiate이고 클라이언트가 요청 및 응답 헤더를 검사 할 수있게하는 OnResponse 메서드라고 생각한다.
PassThroughApp에는 몇 가지 문제가 있으며 가능한 자세한 해결책은 here입니다. 몇 가지 리소스가 아래에 포함되어 있습니다.
http://support.microsoft.com/?id=kb;en-us;303740 http://www.codeproject.com/KB/aspnet/AspxProtocol.aspx
- 1. JSON 요청과 장고 응답
- 2. 웹 브라우저 컨트롤에서 쿠키 액세스
- 3. 웹 브라우저 컨트롤에서 새 창 문서에 액세스
- 4. 웹 브라우저 컨트롤에서 JavaScript 함수/개체의 반환 값을 얻는 방법
- 5. 웹 브라우저 컨트롤에서 쿠키를 만들 수 없습니까?
- 6. webhooks에서 응답 캡처
- 7. WinForms 웹 브라우저 컨트롤에서 FileDown 금지
- 8. Winforms 웹 브라우저 컨트롤에서 ActiveXObject 사용
- 9. WPF 웹 브라우저 컨트롤에서 CSS 편집
- 10. Google 검색이 웹 브라우저 컨트롤에서 작동하지 않습니다.
- 11. 웹 브라우저 컨트롤에서 클릭으로 양식 최소화하는 방법
- 12. C#에서 쿠키 응답 캡처
- 13. 대응하는 HTTP 파이프 라인 요청과 일치하는 HTTP 응답
- 14. 브라우저 응답 크기 제한
- 15. 목록보기 컨트롤에서 키보드 입력 캡처
- 16. 내장 된 웹 브라우저 컨트롤에서 JavaScript를 활성화하려면 어떻게합니까?
- 17. 캡처 브라우저 복원 옵션
- 18. Adobe AIR에서 웹 페이지 캡처
- 19. wpf 웹 브라우저 컨트롤에서 보안 웹 페이지 찾아보기
- 20. PCap.Net을 사용하여 DNS 응답 캡처?
- 21. , 모든 브라우저
- 22. PHP 파일에서 인터넷의 모든 웹 페이지에 응답
- 23. Silverlight 웹 브라우저 컨트롤
- 24. .Net의 웹 브라우저 컨트롤에서 크기가 조정될 때 깜박임을 어떻게 억제합니까?
- 25. 웹 브라우저 컨트롤에서 사용할 수있는 로컬 서버를 만드는 방법
- 26. VB.NET 웹 브라우저 컨트롤에서 자바 스크립트 html 페이지 수정
- 27. WinAPI를 사용하여 ProBrowser 컨트롤에서 데이터 캡처
- 28. 모든 로그를 grails에서 요청과 연관시키는 방법은 무엇입니까?
- 29. innosetup - 마법사 페이지 컨트롤에서 이벤트 캡처
- 30. 웹 브라우저 컨트롤에서 "보안 경고"창을 비활성화하는 방법
나는 종류의 I는 웹 브라우저 컨트롤에서 캡처 할 수있는 몇 가지 이벤트가 있다고 기대했다. –
에 대한 'Edit Against Strikes Back'결과와 같은 말을하고 싶었습니다. WebClient 클래스를 사용하여 요청을 한 다음 브라우저 컨트롤을 사용하여 결과를 표시하는 방법에 대해 어떻게 생각하십니까? 나는 경험할 시간이별로 없지만 그것이 나의 다음 단계라고 생각한다. –
OpenRead (webclient에서)를 사용하여 NavigateToStream (webbrowser에서)을 사용할 수 있지만 사용할 이벤트가 확실하지 않습니다. 테스트 할 재미있는 것 같습니다. –