在FiddlerScript中工作,我在OnBeforeResponse方法中进行了一些更改,这些方法曾经在不同的机器上工作(现在已经很久了),但现在不适合我.我把它归结为以下基本示例.
在fiddler沙箱页面上,我试图用每个项目的 URL 替换每个项目的单词:http: //webdbg.com/sandbox/shop/
Fiddler脚本文件从原来修改为有两个新行.1根据我见过的所有例子以及曾经为我工作的内容解码会话,1代替响应.
static function OnBeforeResponse(oSession: Session) {
oSession.utilDecodeResponse(); //Added this.
oSession.utilReplaceInResponse("per item", "per item"); //Added this
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
}
Run Code Online (Sandbox Code Playgroud)
保存上面的fiddlerscript文件并刷新页面后,我没有在浏览器中看到替换显示.如果我看在提琴手检查,我正在看的内容替换.这意味着OnBeforeResponse确实在某个时刻被调用,并且utilReplaceInResponse也在执行.
更奇怪的是,如果我在所有响应(Fiddler - > Rules - > Automatic Breakpoints - > After Responses)之后放置断点并刷新页面,响应会按预期点击断点,然后单击Run to Completion并且浏览器确实显示替换.所以:没有断点,页面不会在呈现的页面中显示替换.使用断点并简单地运行完成,页面确实显示替换.
为什么页面不显示浏览器中的更改,即使它在Fiddler检查器中显示,或者我设置了断点?
.
解决方案 如果在主工具栏中选择了Stream选项 - 取消选择它并按预期工作.
.
环境:Fiddler v2.4.5.3 - 64位AMD64,VM:114.00mb,WS:132.00mb .NET 2.0.50727.5472 WinNT 6.1.7601 SP1
见过IE9和Chrome31
| 归档时间: |
|
| 查看次数: |
1521 次 |
| 最近记录: |