C# 是否从web浏览器控件捕获所有请求和响应?
是否有方法捕获并打印来自web浏览器控件的所有请求和响应,包括异步请求?您是否考虑过使用?他们甚至有一个你可以用来做这个的 编辑 您可以尝试使用或获取响应信息。您可以使用请求获取信息。这些事件可能会发生在异步请求中,但我不确定这一点 编辑会回击 我用上面的事件做了一些测试,但恐怕什么都没有。这些事件没有给我任何我可以利用的东西。尽管他们可以访问webresponse和webrequest,但在我的测试中它们始终为nothing/null 我想悲哀的现实是,web浏览器控件并不是按您想要的方式使用的。它只用于服务网页/数据,不提供查看数据的权限。我认为他们这样做是为了防止有人制造恶意软件/间谍软件浏览器C# 是否从web浏览器控件捕获所有请求和响应?,c#,.net,wpf,wpf-controls,webbrowser-control,C#,.net,Wpf,Wpf Controls,Webbrowser Control,是否有方法捕获并打印来自web浏览器控件的所有请求和响应,包括异步请求?您是否考虑过使用?他们甚至有一个你可以用来做这个的 编辑 您可以尝试使用或获取响应信息。您可以使用请求获取信息。这些事件可能会发生在异步请求中,但我不确定这一点 编辑会回击 我用上面的事件做了一些测试,但恐怕什么都没有。这些事件没有给我任何我可以利用的东西。尽管他们可以访问webresponse和webrequest,但在我的测试中它们始终为nothing/null 我想悲哀的现实是,web浏览器控件并不是按您想要的方式使用
最好的办法是将web浏览器与fiddler(或其他一些“嗅探”库)耦合起来。实现这一点的另一种方法是实现自己的处理程序,但这不是一项简单的任务。基本上,应用程序是Internet Explorer通过URLMON从url下载数据的机制。您可以实现自己的应用程序来替换URLMON使用的默认处理程序,这将允许您控制所有请求和响应 除了替换默认处理程序,您还可以实现一个应用程序来包装它。一个常见的例子是Igor Tandetnik创建的,它展示了如何完成类似的事情。您还可以在这个代码项目中找到一个C#实现。我相信您最感兴趣的接口是,以及允许客户机检查请求和响应头的方法 PassThroughApp中存在一些问题,这些问题都很详细,并提供了可能的解决方案。下面还包括一些资源
我有点希望在web浏览器控件中捕获一些事件。关于“编辑回击”结果,我正要发表评论说同样的话。您认为如何使用WebClient类发出请求,然后使用浏览器控件显示结果。我没有太多时间去体验,但我认为这将是我的下一步。这是可行的,使用NavigateToStream(在webbrowser上)和OpenRead(在webclient上),但我不确定要使用哪些事件。听起来很有趣。