嘿,伙计们,
我有个问题。
有没有办法防止客户端对HTML数据属性的操作。
我的问题是,如果有人足够聪明地查看源代码并更改属性,例如,我使用jQuery/ajax来获取我的data-attribute的值,并使用ajax将其发送到我的控制器。我的控制器现在开始查看switch case是否与我从data-attr中获得的数据相匹配。
但是如果我改变了一些不存在的东西的data-attr值,它会显示我的默认情况。
有什么办法可以防止/避免这个问题吗?
var saveAttr = jQuery('#example').attr("data-attr");
jQuery.ajax({
url: "forexample",
method: "POST",
data: { action: "someCaseinMyController", saveAttr:saveAttr },
}).done(function (response){
jQuery("#someDiv").html(response);
});
发布于 2019-10-09 21:33:49
简短的回答是:不。
更长的答案:将您的切换案例值转换为查找映射或数组,并测试传入的值,以便在错误到达您的切换案例之前抛出错误。
这可以像这样做:
const arrayOfCases = ['name', 'email', 'city', 'state', 'address']
if(arrayOfCases.includes(userInput)) {
// your switch case here
} else {
// handle invalid data
}
https://stackoverflow.com/questions/58305192
复制相似问题