编辑fiddler脚本推荐使用默认的fiddler脚本编辑器,虽然没有代码补全,但是有错误提示

 

右侧还有参数提示:

 

默认就是这个编辑器,不是的话编辑器修改位置:Tools->Options->tools->FiddlerScriptEditor:安装地址\Fiddler\ScriptEditor\FSE2.exe

1、fiddler脚本采用的是JScript.NET语言,常用的调试方法:

  1. FiddlerObject.alert(信息值) 弹窗提示
  2. FiddlerObject.log(信息值) log列表中显示(log真好使)

 

2、最主要的三个功能函数如下,顶部可直接go快速定位该三个函数:

 

1)、OnBeforeRequest 类似bpu快捷方式,在请求前触发的修改,比如设置cookie等

  

2)、OnBeforeResponse 类似bpafter快捷方式,在请求后触发的修改,比如修改返回值,获取返回信息等

 

 

3)、OnExecAction 即fiddler左下角命令行中常用指令的配置处,常用的比如bpu、bpafter、urlreplace等,可以自定义,很强大

 

3、业务涉及的具体实现:

因为谷歌浏览器升级到95版本以后SameSiteByDefaultCookies的限制,跨域后不允许设置cookie,set-cookie会失效,但是测试业务时又需要用到,浏览器降级可以解决,但是不想降级。于是希望用fiddler实现获取上一个接口返回的set-cookie值,强行种到后续请求中去

具体实现:

1)、首先main函数中定义全局变量:

 

2)、OnBeforeResponse函数中获取目标请求返回值中的set-cookie,赋值到全局变量中,具体见上面OnBeforeResponse的图

3)、OnBeforeRequest函数中将全局变量的值给目标请求设置cookie,具体见上面OnBeforeRequest的图

 

保存,搞定。

posted on 2022-10-10 18:16  inging444  阅读(441)  评论(0编辑  收藏  举报