Delphi - 记录所有的HTTP请求

3

我需要记录所有应用程序的HTTP请求。 我使用Delphi 7.0开发。 有人知道如何实现吗?

4个回答

7

我曾经研究过Indy组件是否可以做到这一点,但是在Remy Lebeau的一个旧的新闻组回复中发现了以下内容:

如果...你想查看其他应用程序生成的流量,那么不,你不能使用Indy来实现。这超出了Indy设计范围之外。你需要编写自己的NDIS驱动程序来进行捕获。或者使用第三方嗅探API,例如WinPCap


3
甚至有一个适用于WinPcap的Delphi包装器:http://www.magsys.co.uk/delphi/magmonsock.asp - mghie

1

关于WireShark呢?

还有一个叫做Fiddler的产品。我发现这个工具非常有用,可以精确追踪Indy组件发送/接收的内容。唯一的缺点是需要使用代理。对于Indy组件和Firefox等浏览器来说,这不是问题。但如果您需要捕获所有应用程序的数据,您需要为这些应用程序设置代理。


WireShark是Ethereal的继任者,并使用WinPcap。因此,这些答案都指向同一个... - mghie

1

如果你想深入了解纯 Delphi 的事情,有一个名为 winsock logger 的程序正在流传,可以通过 Google 找到帮助(尽管它钩取了 winsock API)。


0

你必须编写一个 Delphi 应用程序来完成吗?你可以使用像 ethereal 这样的应用程序吗?


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接