FiddlerScript是capable of JSON parsing and modification。例如,对OnBeforeResponse
的以下添加将用127.0.0.1
轻松地替换Ipify's返回的外部IP地址:
if (oSession.url == "api.ipify.org/?format=json"){
var j = GetResponseJson(oSession);
j["ip"] = "127.0.0.1";
SetResponseJson(oSession, j);
}
其中
GetResponseJson
和SetResponseJson
是我根据Eric的链接答案制作的帮助函数:static function GetResponseJson(oSession: Session){
return Fiddler.WebFormats.JSON.JsonDecode(oSession.GetResponseBodyAsString()).JSONObject;
}
static function SetResponseJson(oSession: Session, j){
oSession.utilSetResponseBody(Fiddler.WebFormats.JSON.JsonEncode(j));
}
这对于修改Fiddler截获的JSON有效负载非常有用。
我的问题是:
有没有一种等效的方法来解析和修改FiddlerScript中的XML?
最佳答案
FiddlerScript使用JScript.NET,因此可以引用.NET程序集,包括包含System.Xml
类的XmlDocument
。
首先,在Fiddler>工具> Fiddler选项>扩展中,添加对System.Xml.dll
的引用:
接下来,在FiddlerScript的顶部,引用它:
import System.Xml;
此时,您可以创建
XmlDocument
对象:var x = new XmlDocument();