我一直在研究这个问题 - 我正在构建一个需要捕获来自主机的HTTP / HTTP流量的模块。我选择的原始语言是Java,我可以执行以下操作:
- 使用LittleProxy创建代理服务器
- 修改我的浏览器设置以使用我创建的代理
- 在浏览器上执行交易,以便我的代理可以记录它们。
醇>
除了以下问题外,这种方法很好:
- 对于使用我的应用程序的用户,这会产生额外的手动开销,以便在浏览器上手动设置代理详细信息(尽管可以通过更改浏览器设置和启动来完成此操作)。
- 我的应用只能记录指向代理的特定浏览器中的交易。
醇>
我希望以删除用户开销的方式增强此模块。像Wireshark,Fiddler和LoadRunner(VuGen)这样的东西。我的问题是,他们是如何做到的?他们是否也在幕后的某个地方运行代理?或者他们是否从网络或操作系统或其他层嗅探HTTP流量?
所以准确地说,我有以下问题:
- 创建代理是捕获HTTP请求的唯一方法吗?
- 我可以从操作系统级别(没有代理)跟踪请求/响应吗?如果是,Java是否足够好,还是应该倾向于.NET(C#或其他什么)?
- 如果代理是唯一的方式,我可以利用Fiddler或Wireshark吗?他们有API我可以合并到我的代码中吗? (我没有在他们的文件中遇到任何问题 - 可能我看起来不够努力)
醇>
任何信息都会帮助我指明方向。请帮忙!
谢谢,
Sriram Sridharan