拦截和操纵HTTP POST请求

时间:2012-01-04 16:34:06

标签: http http-post greasemonkey fiddler

我使用的网络应用程序存在隐私问题。它运行一个Flash脚本,它抓取一个屏幕截图,然后以特定的间隔将其提交给服务器。我已经成功拦截了HTTP POST请求但我希望操纵它以返回空白图像。

我已经想出如何在Firebug中捕获HTTP请求,我可以在Fiddler中捕获/中断事件。 Fiddler甚至允许我提交一个修改过的POST命令(但我只能弄清楚如何手动执行此操作,如果它没有及时收到此POST,则会破坏web-app。)是否有可以使用的工具或脚本在浏览器中修改此帖子请求?我没有看到Greasemonkey工作,因为SWF文件正在生成HTTP请求。

2 个答案:

答案 0 :(得分:3)

Fiddler还有一种脚本语言,可以自动修改某些请求或响应。

默认情况下,fiddler脚本会保存在我的文档目录中的Fiddler2\Scripts\CustomRules.js中。

一个简单的脚本会这样:

static function OnBeforeResponse(oSession: Session) {

    if ((oSession.hostname == "example.org") && (oSession.PathAndQuery=="/path/myServlet")) {
      oSession.utilDecodeResponse();
      var oBody = System.Text.Encoding.UTF8.GetString(oSession.responseBodyBytes);
      oBody = oBody.replace("text to be replaced", "replaced text");
      oSession.utilSetResponseBody(oBody);

      //Prevent caching of response
      oSession.oResponse.headers.Remove("ETag");
      oSession.oResponse.headers.Remove("Last-Modified");
      oSession.oResponse["Cache-Control"] = "nocache";
    }
}

如需更多样本,请访问http://www.fiddler2.com/fiddler/dev/scriptsamples.asp

答案 1 :(得分:1)

请求制作者是Google Chrome的一个不错的小扩展程序,您可以使用它进行编辑和编辑。重新发送各种HTTP请求。