我想写一个小应用程序,它可以: 1.监控通过网络浏览器请求的URL和/或 2.监控本地计算机上的传入http响应
我一直在做一些谷歌搜索,但我没有找到任何明确的答案。我想的可能是System.Net.Sockets.TCPListener并且搞乱了它,但我的印象是它不是我正在寻找或者无法处理这两件事。
我不需要详细的逐步解释。只是一个小概述将是有帮助的(如果这是可能的),例如(使用什么类,要订阅什么事件,实例化必要对象所需的任何其他细节)我可以谷歌细节。
答案 0 :(得分:1)
答案 1 :(得分:0)
您可能希望使用类似Wireshark的实用程序(图形化,但不能使用C#,AFAIK编写脚本)。 Wireshare使用一个名为WinPcap的库,它可以对计算机上的TCP流进行实际监控。 HTTP标头的解码需要在您的应用程序中完成(这是wireshark / tcpdump / windump应该能够做到的)。您将需要使用PInvoke来调用WinPcap DLL。您可以通过执行“WinPcap PInvoke”的Web搜索来查找库包装器。
这个问题听起来非常类似于以下内容:
Is there any way in .NET to programmatically listen to HTTP traffic?
编辑:此外,Capturing HTTP requests可能会有所帮助