你好 StackOverflow 的人们,
我是 Fiddler 2 的新手,但我似乎相处得很好。虽然我有一个问题似乎无法解决。
我想做的其实很简单。我想拦截一个请求,让它运行,但如果响应不适合我,我希望它重新发送请求并使初始请求不存在。这使用 FiddlerScript。
为什么这很有用:在您发送请求但响应每次都不同的情况下。你只想要正确的回应。
到目前为止我所拥有的:
static function OnBeforeResponse(oSession: Session)
{
if (oSession.uriContains("/stackoverflowexample"))
{
if(oSession.GetRequestBodyAsString().Contains("GetRandomItem"))
{
if(oSession.GetResponseBodyAsString().ToString().Contains("ItemID"))
{
var body = oSession.GetResponseBodyAsString();
var item = 0;
for(var i = 0; i< body.Length; i++)
{
if(i < body.Length -7)
{
if(body.Substring(i, 6) == "ItemID")
{
item= Convert.ToInt32(body.Substring(i+7,1));
}
}
}
MessageBox.Show(item.ToString());
if(item < 2536) //for example itemid must be higher than 2536
{
//STOP / MAKE this session nonexcistent
//RESEND CURRENT REQUEST to get new response
oSession.state = SessionStates.SendingRequest;
FiddlerObject.utilIssueRequest(oSession.oRequest.ToString());
}
}
}
}
}
欢迎使用 Fiddlerscript 的所有可能解决方案。
感谢 Stackoverflow 社区!(和 Fiddler 开发人员)