sockets - 以独立于浏览器的方式查看用户正在访问哪个网站

标签 sockets networking web packet winpcap

我正在尝试构建一个应用程序,该应用程序可以在用户访问我数据库中存在的网站时将有关网站的特定信息通知用户。必须以与浏览器无关的方式完成此操作,以便用户在访问网站时始终可以看到该信息(无论他或她使用哪种浏览器或其他工具访问该网站)。

我的第一个(部分成功)方法是使用System.Net.Sockets.Socket类等查看数据包。不幸的是,我发现这种方法仅在用户具有管理员权限时才有效。当然,那不是我想要的。我的目标是用户可以安装一个可以立即使用的相对简单的程序。

之后,我开始寻找替代方案,并发现了很多有关WinPcap及其一些.NET包装的信息(我告诉过我我已经在编程C#.NET吗?)。但是通过WinPcap,我发现它必须安装在用户的PC上,并且没有办法引用一些dll文件并删除代码。我已经考虑将WinPcap作为安装程序的先决条件,但这也很麻烦。

好吧,长话短说。我想在我的应用程序中知道用户正在访问的网站。我认为必须通过查看网络的数据包来完成此操作,但无法为此找到一个好的解决方案。我的应用程序是在C#.NET(4.0)中构建的。

最佳答案

您可以使用Fiddler监视Internet流量。
它是

a Web Debugging Proxy which logs all HTTP(S) traffic between your computer and the Internet. Fiddler allows you to inspect traffic, set breakpoints, and "fiddle" with incoming or outgoing data. Fiddler includes a powerful event-based scripting subsystem, and can be extended using any .NET language.



它可以编写脚本,可以很容易地成为used from .NET

关于sockets - 以独立于浏览器的方式查看用户正在访问哪个网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4188611/

相关文章:

c - 用户到套接字的高效映射

c# - 如何在不使 header 信息无效的情况下通过网络传输发送对象

javascript - 为什么关闭 Charles 应用程序后无法访问网站?

html - 我可以在第一次点击后阻止表单提交操作吗

networking - 如何发现网络中和网络上机器的 MAC 地址?

asp.net - 现有网站在 Internet Explorer 8 中正确呈现有哪些问题?

node.js - 如何检测 Node.js 套接字中的网络故障

node.js - socket.io + 使用 'emit' 回调?

java - 多端口 Netty 套接字服务器

c++ - 虚拟处理器和高级网络 linux 和 windows