【Fiddler】利用Fiddler中的FiddlerScript自动替换请求URL中的字符

401 阅读1分钟

今天逛吾爱论坛,发现一个这样的问题,由于我就是研究FiddlerScript的,就开个帖子帮他解决吧

​编辑

问题:

请大佬指点,用Fiddler抓包如下面链接,“M6”前后字符随机,在抓包过程中怎么把链接“M6”自动替换成指定的字符,在以后抓包都能自动替换,谢谢!

xxx.xxx.cn/xxx/M6/xxxx…

我这里就以Fiddler每次打开请求的URL作为例子,大家举一反三即可

代码效果

​编辑

实现效果

代码可以修改的地方

1.是否开启替换请求URL参数,大家随意修改

2.www.fiddler2.com,大家替换成自己要修改的host名字

3.UpdateCheck,大家替换成自己想要替换请求URL中的字符串,

4.52pojie,大家替换成自己想要替换成的东西

​编辑

代码放置步骤

1.打开Fiddler

2.点击Fiddler右边的Fiddler脚本

3.找到跳转,点击OnBeforeRequest

​编辑

4.代码片段1放到OnBeforeRequest前面,代码片段2放到OnBeforeRequest里面

​编辑

 5.点击规则->是否开启替换请求URL参数

​编辑

​​

  代码片段1

//控制开关,规则->是否开启替换请求URL参数

    public static RulesOption("是否开启替换请求URL参数")

    BindPref("fiddlerscript.rules.isURL")

    var m_isURL: boolean = false;

代码片段2

//在规则->是否替换请求URL参数开启了就会执行下面的命令

        if(m_isURL){

            //这里一般填写Host+?前面的的内容,因为?后面的内容容易变动

            //这里由于问题中的人说会变动,那么我们就直接写host

             

            if(oSession.fullUrl.Contains("www.fiddler2.com")){

                try{

                    //问题中是把M6替换,那你就把UpdateCheck替换成M6,而52pojie替换成想替换的字符串

                    oSession.fullUrl = oSession.fullUrl.Replace("UpdateCheck","52pojie")

                }catch(err){

                    FiddlerObject.log("出现异常,联系QQ:2908436596,错误原因:"+err)

                }

            }

        }