获取Flash发送的请求标头

时间:2011-07-18 13:59:45

标签: flash firefox-addon google-chrome-extension xmlhttprequest greasemonkey

我不确定这是否可能,但我想问一下也没什么坏处。

我在包含Flash应用程序的页面上有一个脚本,可以通过Greasemonkey或Chrome扩展程序。该Flash应用程序发出POST请求,例如www.example.com/api/request.json?var=something

在同一页面上运行的脚本是否可以捕获Flash代码发送的请求标头?有点像Tamper Data,Fiddler等。

非常感谢,即使答案最终没有:)

编辑:再多一点可能有帮助的信息。我不需要重定向或更改来自Flash应用程序的请求。我只是能够读入标题并将该信息保存在同一页面上运行的用户脚本/扩展中的变量中。

3 个答案:

答案 0 :(得分:1)

如果您真的想捕获并重新路由或编辑该应用程序请求,您只需在主机文件中输入(如果在Windows上)并运行本地Web服务器(如xampp)来处理请求你的机器。这基本上是完全劫持对该服务器的请求,您可以随心所欲地执行任何操作。有关如何向主机文件添加条目的详细信息,请参阅this

此外,如果您需要在Linux或Mac等其他系统上编辑主机条目,只需谷歌相同的概念,除了在搜索旁边添加您的操作系统名称。 :)

答案 1 :(得分:0)

使用GreaseMoneky,没有。

他们陈述in their FAQ

  

Greasemonkey允许您将JavaScript代码(称为“用户脚本”)添加到任何网页,该网页将在加载HTML代码时运行。 [...]用户脚本或多或少像自动为任何匹配一个或多个glob模式的URL调用的bookmarklet。

他们将无法像使用FireBug或WireShark一样拦截“现场”发生的事情。

当DOM准备好然后死亡时,它们会执行代码。

更新

如果您只需查找触发的请求,而不是拦截和/或对其采取行动,您可以使用FireBug(如果您使用的是Firefox)或Chrome的集成开发工具(按F12 )。

答案 2 :(得分:0)

可以使用chrome.experimental.webRequest扩展API捕获从Flash发送的HTTP POST请求标头,但如果通过标头表示发送的实际表单数据,则它不是标头的一部分(并且无法捕获使用扩展API afaik)。

chrome.experimental.webRequest.onRequestSent.addListener(function(details) {
    console.log("Headers:", details);
}, null,  ["requestLine", "requestHeaders"]);