JavaScript编程:事实上的开源?

时间:2011-07-29 01:13:30

标签: javascript source-code-protection

根据我的理解,JavaScript代码,因为它是客户端,不会被客户端隐藏,因此事实上是开源的。

我知道“代码混淆”,但根据维基百科的说法,“充其量,混淆只会让对程序进行逆向工程变得耗费时间,但并非不可能。”

是否可以真正隐藏您的JavaScript代码,以保持其闭源?

3 个答案:

答案 0 :(得分:7)

开源并不意味着“我可以看到来源”。它松散地意味着“许可证允许我重新分发此来源并按照我的意愿行事[免责声明:参见许可条款]”。所以你的术语是错误的。

最终,如果您将Javascript传送到用户PC上的Web浏览器,则用户可以像访问PC一样访问它。你不能禁止这样做。您可以通过混淆来略微缓解它,但维基百科的引用绝对正确。

只需提供高质量的软件并继续前进。

答案 1 :(得分:1)

不可能,但许可证可以防止盗窃。

答案 2 :(得分:0)

你无法向用户隐藏你的前端javascript(除非你在讨论服务器端的javascript,比如node.js,但这是一个完全不同的主题),但如果你的目标是隐藏它那么多尽可能通过混淆,javascript压缩并不是一个糟糕的方式来解决它。谷歌有一个非常好的JavaScript压缩器,它将使你编码所有但不可能进行逆向工程。此外,它还使您的代码占用更少的空间,这意味着它将加载更快。

http://code.google.com/speed/articles/compressing-javascript.html