隐藏某些内容,以便在HTML和JavaScript中使用inspect无法查看

隐藏某些内容,以便在HTML和JavaScript中使用inspect无法查看,javascript,html,Javascript,Html,我曾尝试制作一个小网站,如果用户猜对了代码,他们就会赢。我现在做的是: <script> function z() { var b = document.getElementById('idea'); var a = document.getElementById("test"); if (a.value == "code") { document.getEleme

我曾尝试制作一个小网站,如果用户猜对了代码,他们就会赢。我现在做的是:

<script>
    function z() {
        var b = document.getElementById('idea');
        var a = document.getElementById("test");
        if (a.value == "code") {
            document.getElementById('err').style.color="green"
            document.getElementById('err').innerHTML= 'Code Correct';
        } else {
            document.getElementById('err').style.color="red"
            document.getElementById('err').innerHTML= 'Referral Code';
        }
    }
</script>
但是,如果用户打开“inspect”窗口,他们可以在脚本标记中提前看到代码。有什么办法可以防止这种情况发生吗

此外,我还通过从Django发送输入字段值中的数据进行了尝试,如下所示:
然后在脚本标记中,如果a.value==b.value,那么我就做了。但是,在输入标记中,也可以看到检查时的值。

正如@Daniel_Knights和@ATD所指出的,在网站中隐藏信息有两个选项:将代码移到后端或使用模糊处理

模糊处理通常做的是自动扫描和分析代码,并以人类无法阅读的方式重写代码,但不改变代码的功能。这是通过将JavaScript变量、函数、参数和类重命名为短而难以辨认的名称(如a、a1、u2)来实现的,但更复杂的混淆器也能够重新排列代码,使其更加模糊。当你需要保护你的代码并且你想让你的智力成果很难被窃取时,模糊处理是很好的。然而,模糊处理是一个可逆的过程,因为它是确定性的,这意味着理论上每个有足够动机和技术技能的人都可以对代码进行反向工程,并最终解决它

对您来说,可行的解决方案是在您的网站上添加一个可编程服务器。我建议您使用它,因为它是一款现代的、流行的、有良好文档记录的、稳定的web服务器,可以在linux和windows上运行

您的网站目前似乎是一个简单的html页面,其中包含一些JavaScript。JavaScript代码只在访问者的web浏览器中加载和执行,它被复制到用户的计算机上,因此可以完全访问它进行检查和反向工程。可编程web服务器(如NodeJS)在您控制的远程计算机上运行,此服务器上运行的所有代码都与it用户隔离,无法从计算机外部访问,并为您提供保存敏感数据(如获胜票号)的位置

我建议您阅读本文,并在继续之前进行进一步研究:


它必须在服务器端处理,前端不能100%隐藏任何东西,这就是我的问题所在。怎么做?你可以试试javascript模糊处理。这将重写您的代码,使用户难以理解或无法理解。请看一个例子。如果您不想额外往返服务器,您可以尝试发送加密散列,例如bcrypt,并与前端的散列值进行比较。我不明白为什么对该问题投反对票。对于一个几乎没有网络编程经验的人来说,这是一个完全正确的问题。