在我的fiddle中,我有一个示例,该示例应仅允许用户通过基于一些计算的javascript将提交按钮元素禁用为false来单击提交。
function enable(TVD) {
if (TVD[TVD.length - 1] >= trueTVD - 5 && TVD[TVD.length - 1] <= trueTVD + 5) {
//console.log(TVD[TVD.length - 1]);
$('#submitButton').prop("disabled", false);
} else {
$('#submitButton').prop("disabled", true);
}
}
发生的事情是,我发现一些用户通过使用开发工具之类的东西设法绕过了这个问题。
我想设计这种方式,以免绕过我的安全性。如何实现此目标或从开发工具中隐藏javascript?
最佳答案
最好的方法是在服务器上进行验证。永远不要相信来自客户的任何东西。可能会被篡改。
永远不可能完全阻止开发工具的加载,但是通过禁用F12按钮和contextmenus可能会很困难,但这不是您要走的路。
使用最小化的代码,因此阅读和理解以及篡改使用开发工具或其他嗅探器变得更加困难。
总结:在客户端和服务器(最好在数据库上)上结合使用经过精简(模糊处理)的代码和健全性检查。
关于javascript - 如何避免篡改JavaScript/HTML元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46675099/