我的Ajax调用受“Access-Control-Allow-Origin”
保护但是,仍然可以通过Google Chrome工具进行一些ajax调用。
有没有办法阻止Google Chrome的ajax调用?
(设置CSRF保护的简便方法?)
答案 0 :(得分:4)
正如本杰明在第一条评论中所说,永远不要相信客户,你需要在服务器端进行验证。但我仍然可以为您提供一个解决方案,以防止用户从控制台发送Ajax请求。
您只需要将XMLHttpRequest
构造函数设为私有,然后您可以将其设置为null
(function (xhr) {
// Your code here ...
// Here you can send Ajax Requests without any problem
// You just need to call the sendAjaxReq with options
function sendAjaxReq(options) {
window.XMLHttpRequest = xhr;
$.ajax(options);
window.XMLHttpRequest = null;
}
}(window.XMLHttpRequest));
window.XMLHttpRequest = null;
// Now you can't send Ajax requests from here, and not from console as well.