如何使用 Fiddler 脚本将 GET 更改为 POST?

How do I change a GET to a POST using Fiddler scripting?

我已经四处寻找,但找不到使用 Fiddler 将 GET 转换为 POST 的方法。考虑到它的所有其他功能,我希望有某种方法可以做到。 我已经编写了足够多的 Fiddler 脚本来找到正确的 URL 并开始操作它,但不是最后一点。我需要这样做的原因是我正在使用的 Web 客户端需要更改它发送凭据的方式,但另一个组处理它,他们需要一些时间才能完成。这是我到目前为止的代码:

        if (oSession.fullUrl.Contains("j_spring_security_check") > -1)
    {
        var newUrl:String;
        newUrl = oSession.fullUrl;
        if (newUrl.Contains("j_username"))
            newUrl = newUrl.Replace("j_username", "username");
        if (newUrl.Contains("j_password"))
            newUrl = newUrl.Replace("j_password", "password");
        FiddlerObject.alert(newUrl);
        // ### I need to change it from a GET to POST here ###
        FiddlerObject.alert(newUrl);
    }

Fiddler 留言板上的管理员给了我足够的信息来解决这个问题。 这是有效的解决方案:

        if (oSession.fullUrl.Contains("j_spring_security_check") && 
        oSession.fullUrl.Contains("j_username") &&
        oSession.HTTPMethodIs("GET"))
    {
        var newUrl:String;
        newUrl = oSession.fullUrl;
        if (newUrl.Contains("j_username"))
            newUrl = newUrl.Replace("j_username", "username");
        if (newUrl.Contains("j_password"))
            newUrl = newUrl.Replace("j_password", "password");
        FiddlerObject.alert(newUrl);

        oSession.oFlags["ui-backcolor"] = "lightgreen"; // jbp for debug use
        oSession.oRequest.headers.HTTPMethod = "POST";
        oSession.oRequest["Content-Type"] = "application/x-www-form/urlencoded";
        oSession.utilSetRequestBody("");

        oSession.fullUrl = newUrl;

        FiddlerObject.alert(oSession.fullUrl.ToString());
    }