5

我有一些关于客户端 JavaScript 混淆的问题。

第一个问题:您可以为此操作建议的最好的工具或最好的三个工具是什么?

第二个问题:如果代码被混淆,当生产中出现极端情况时,开发人员应该如何调试这样的代码(例如使用firebug)?

PS - 我知道在生产中调试是不好的做法,但我们遇到了一些紧急情况,有时会遇到这种情况。

谢谢你的帮助!

4

4 回答 4

5

1) 具有高级优化的闭包编译器

2) 先加倍他们的工资,然后给他们看 jsbeautifier.org

于 2010-05-14T07:49:28.387 回答
3
  1. 如果您正在寻找混淆,我会说JScrambler。他们还在网站上有一个比较表,列出了其他著名的 javascript 混淆器。

  2. 对于调试,您可以使用SpiderMonkey或 Rhino 之类的东西。Firebug非常适合在应用编码时检索解码的源代码。

于 2010-05-14T13:36:31.937 回答
0

我认为 IE8 javascript 调试器(在开发人员工具下)实际上重新缩进/重新格式化您的代码,使其再次可读。

不确定这个功能是否已经添加到 Firebug 中,最近没有使用它,但我前段时间真的很想要这个功能。

于 2010-05-14T07:49:10.853 回答
0

我们的SD ECMAScript 混淆器保留了它如何混淆您的代码的地图。如果您进行客户端混淆代码调试,则该映射将告诉原始源中的哪个符号它实际引用。

如果您想调试“格式良好”的混淆代码,您可以从 ECMAScript 混淆器中获取它,方法是首先进行混淆(获取所有布局丢失的代码),然后通过混淆器运行以美化它(它有这个选项)。

第三种选择是在“调试”模式下生成混淆代码。混淆的结果与生产混淆的结果相同,只是每个加扰变量都被命名为“XXX”。这使得理解正在调试的代码与原始代码一样容易,同时验证混淆重命名是否正确。完成调试后,您只需在生产模式下重新混淆即可。

于 2010-05-16T13:45:51.740 回答