我正在尝试找到一种方法,使我的JavaScript代码在浏览器的开发者控制台中不可见,但仍然可用。如果那是不可能的,我需要一种方法使它只能在特定的网站上运行。提前谢谢。
答案 0 :(得分:1)
对于公共网站,您想要是不可能的。您可以对代码进行模糊处理,但不能将其隐藏,因为浏览器不在用户的控件和浏览器需要代码来执行它,因此用户总是可以强制浏览器显示代码。
当然,您可以使混淆更加精细,而不仅仅是丑化,从而进入DRM主题。但仍然不能让任何人掌握(混淆)脚本仍然运行它,并可能对其进行反向工程。
由于您的用户正在运行JavaScript代码'机器,他们必须信任它。 (在某种程度上。它在JavaScript运行时运行沙箱,因此它不会造成太大的伤害。)模糊代码超出缩小范围会让你看起来很可疑,因为它建议你必须隐藏功能这会伤害您的用户或他们的机器。
正如其他人已经评论过的那样,必须保密的代码必须只在服务器端运行,以便只有结果才能到达客户端。
在 Intranet 方案中有所不同,其中相应的IT部门可能对Intranet服务器和客户端计算机都具有独占控制权。在那里,IT部门可以禁用已安装浏览器的检查功能。此外,他们必须确保用户无法以其他方式下载脚本或从浏览器缓存中删除脚本。
实际上,这需要将计算机设置为仅用作网络信息亭(无法运行任意程序的网络终端)。当然,网络或内联网服务器必须可靠地验证这些可信客户端计算机,或者有人可以携带并插入自己的计算机来获取JavaScript代码。