如何保护/隐藏用户查看的Javascript方法或JS文件

时间:2010-10-01 11:59:42

标签: javascript ajax security json

如何保护我实现的JS方法不受用户影响?所以没有人可以复制这些方法。通常,用户可以轻松地在firebug中看到JS方法。我想在firebug中隐藏方法。 有什么技巧可以隐藏用户的方法吗?

注意:我不想使用Eval方法。所以请不要建议我基于eval的技巧

3 个答案:

答案 0 :(得分:8)

无法向用户隐藏代码。如果浏览器可以看到它,那么Firebug可以看到它。使用minifier / packer曾经是一种使得更难获取数据的方法,但像http://jsbeautifier.org/这样的网站能够获取打包的代码并使其变得漂亮。

简短的回答是没有办法隐藏代码。如果有可能,微软,谷歌,雅虎等将隐藏他们的代码。

将JavaScript,HTML和CSS视为开源,因为只需单击一下即可获得源代码。

答案 1 :(得分:7)

有效保护代码的唯一方法是永远不要将其发送到客户端:
将您的“秘密”方法放在服务器上,并使它们可以从客户端调用ajax。

答案 2 :(得分:3)

  1. 尝试打包代码/ minifiying it
  2. google closure compiler是一个好的开始

    还有一个可以使用的YUI库和许多其他库。

    这将使你的代码几乎不可能在firebug中调试。

    虽然没有完全的证明方法可以阻止用户使用您的代码,因为它根据定义在客户端运行。

    1. 你可以做的另一件事是把你想要隐藏的方法放在一个闭包中,这样用户就不能从firebug中运行someMethod()并让它执行代码。