我现在正在测试一种隐藏 javascript 的方法,以便用户无法在源文件中四处搜索它。
方法是这样的:
您包含了一堆 javascript 文件来使您的应用程序正常工作。jQuery、dojo 等库和您自己的代码。这是相当标准的。
有一段关键的 javascript 代码,没有它,应用程序将无法运行,任何好奇的用户也无法在没有它的情况下做出应用程序的正面或反面。这个关键部分不会被脚本标签加载。相反,一个不显眼的小脚本调用数据库并以一个大长字符串返回 javascript。
这个字符串得到 eval()-ed 以使其成为实时代码。但是代码是动态生成的,所以如果用户正在查看源代码或保存网站,它不会显示出来。此外,您可以添加某种盐或时间戳,以防止用户试图欺骗数据库泄露您的 javascript 内核。
我正在尝试从社区获得对此的反馈,而我为使用服务器端代码隐藏 javascript 而出现的大多数示例只是人们希望在标签中包含 .php 文件而不是 .js . 这是完全不同的。
所以你有它。这是一个好主意吗?弱点是什么?