有没有办法让Fiddler JS格式化程序扩展有条件地工作?

时间:2012-05-30 15:20:36

标签: javascript fiddler

作为一名JS开发者,我经常使用Fiddler工具。我还使用它的addon JavaScript Formatter来很好地格式化缩小的文件以进行调试。

然而,问题是JS格式化程序似乎根本不可配置,并且可以在“全有或全无”基础上工作。

问题:

在我的公司,我们有时会将很多(不是JS,但可编译为JS)文件捆绑在一起,将其作为JS提供,然后依靠该文件格式来解析它们并正确加载。这可能听起来很奇怪,但这是为了避免使用数十个微文件,并且只有一个包含所有文件。

所以基本上,文件看起来像:

//MAGICCOMMENT
//FILEID
markup
markup
...
markup
//FILEID
markup
markup
...
markup

等等。

问题:

有没有办法告诉Fiddler 不要美化那些文件?我们在第一行中有一个//MAGICCOMMENT,对于所有可能用于检测它的多部分文件都是相同的,但我不知道是否以及如何使用它。

PS:我想我们无法更改所提供文件的MIME类型。

修改

我知道Rules菜单中的“Make JavaScript Pretty”选项,这是在安装JS Formatter插件后添加的。我想让这个选项有条件地工作(但是:在将数据发送到浏览器时,所以我可以在浏览器上将断点放在美化的JS源上,对于我想要的所有文件被美化,即多部分以外的文件。)

1 个答案:

答案 0 :(得分:1)

目前,您只需在Fiddler Rules菜单上禁用“Make JavaScript Pretty”项。如果要美化单个JavaScript文件,可以通过右键单击“Web会话”列表中的会话并选择“直接在会话中创建JavaScript”来执行此操作。

或者,您可以禁用全局选项并让FiddlerScript有条件地格式化JS文件。例如。内部规则>自定义规则> OnPeekAtResponseHeaders()

if (oSession.oResponse["Content-Type"].ToLower().Contains("script")) {
  if (!oSession.uriContains("Combinedfilenameorwhatnot")) { 
     // Note this flag name is soon changing to X-Format-JS
     oSession["X-FIDDLER-JS-FORMAT"] = "yes"; 
  }
}