编码/保护javascript代码的最佳方法是什么?

可能重复:
我怎样才能混淆JavaScript?

我想“保护”我的Javascript代码。 是否有任何好的,推荐的方法非常难以入侵?

我在Web上测试了一些编码器,有时我的Javascript代码在编码后不起作用。 这是正常的(编码器非常糟糕)?…或者我的代码太糟糕/错误?

你无法阻止任何人查看你的javascript代码。 它与html基本相同。 你可以很难破译,也就是混淆,但你真的从中得不到任何东西。

如果您有应用程序关键代码,无论出于什么原因您认为关键任务,请设计您的Web应用程序,以便在服务器上运行“受保护”代码。 使用仅来回传递状态数据的xhr请求与前端(浏览器)通信。

这是不可能的,因为浏览器需要在它到达时理解你的javascript,因此人类也可以理解它。

为了提高我们的Web应用程序效率,我们决定压缩(YUI for JS和CSS)并将所有主要资源放在HTML页面内联(HTML,CSS和JS)中,shell脚本在部署期间自动执行。

作为一个意想不到的结果,如果您查看我们的应用程序的来源,您会得到一个非常难以理解的~250kb字符串。
这不会阻止真正想要获取代码的人,但它会阻止许多人。

你可以压缩你的JavaScript。 雅虎提供压缩文件的在线工具。 它还支持变量替换,即用a,b,c等替换你的逻辑函数名,变量名,以保护你的客户端业务逻辑。

http://refresh-sf.com/yui/

您不能“保护”您的JavaScript,因为它是客户端,您可以做的最好的事情是validation任何用户输入服务器端,以确保用户没有注入任何恶意代码或尝试任何forms的XSS(跨站点脚本)。 validation服务器端是非常重要的,特别是因为一个人可以将代码注入一个只有FireBug的糟糕网站。 基本上,您需要确保从未写过用户输入的字符串,直到该字符串被编码为止。 安全性比编码用户字符串更多,但它本身修复了许多安全漏洞。