通过代码捕获HTTP流量 - 有哪些不同的选项?

时间:2018-04-23 09:43:42

标签: java c# fiddler http-proxy little-proxy

我一直在研究这个问题 - 我正在构建一个需要捕获来自主机的HTTP / HTTP流量的模块。我选择的原始语言是Java,我可以执行以下操作:

  1. 使用LittleProxy创建代理服务器
  2. 修改我的浏览器设置以使用我创建的代理
  3. 在浏览器上执行交易,以便我的代理可以记录它们。
  4. 除了以下问题外,这种方法很好:

    1. 对于使用我的应用程序的用户,这会产生额外的手动开销,以便在浏览器上手动设置代理详细信息(尽管可以通过更改浏览器设置和启动来完成此操作)。
    2. 我的应用只能记录指向代理的特定浏览器中的交易。
    3. 我希望以删除用户开销的方式增强此模块。像Wireshark,Fiddler和LoadRunner(VuGen)这样的东西。我的问题是,他们是如何做到的?他们是否也在幕后的某个地方运行代理?或者他们是否从网络或操作系统或其他层嗅探HTTP流量?

      所以准确地说,我有以下问题:

      1. 创建代理是捕获HTTP请求的唯一方法吗?
      2. 我可以从操作系统级别(没有代理)跟踪请求/响应吗?如果是,Java是否足够好,还是应该倾向于.NET(C#或其他什么)?
      3. 如果代理是唯一的方式,我可以利用Fiddler或Wireshark吗?他们有API我可以合并到我的代码中吗? (我没有在他们的文件中遇到任何问题 - 可能我看起来不够努力)
      4. 任何信息都会帮助我指明方向。请帮忙!

        谢谢, Sriram Sridharan

0 个答案:

没有答案