我想在Fiddler拦截的所有会话中为响应添加统一延迟。 "response-trickle-delay"
的使用是不可接受的,因为它实际上并没有引入统一的延迟,而是延迟每个1KB的传输(模拟低带宽,而不是高延迟)。
我能找到的唯一参考是here,它使用了以下暴行(请勿使用!):
static function wait(msecs)
{
var start = new Date().getTime();
var cur = start;
while(cur – start < msecs)
{
cur = new Date().getTime();
}
}
并wait(5000);
插入了OnBeforeResponse
。
正如预期的那样,它锁定了我的电脑并开始使CPU过热,我不得不退出Fiddler。
我正在寻找一些东西:
看起来FiddlerScript是用JScript.NET编写的,从我收集的内容中有一个setTimeout()
函数,但是我无法调用它(我不知道JavaScript或者.NET根本没有。这是我的OnBeforeResponse
:
static function OnBeforeResponse(oSession: Session) {
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
setTimeout(function(){},1000);
}
它只是在setTimeout
行给出语法错误。可以从FiddlerScript中使用setTimeout()
来引入统一的延迟吗?
答案 0 :(得分:4)
FiddlerScript使用JScript.NET,它可以引用.NET程序集,System.Threading
包含Sleep
。
System.Threading.dll
的路径。在我的机器上,它位于C:\Windows\Microsoft.NET\Framework\v4.0.30319
。import System.Threading;
。Thread.Sleep(1000)
。