我有一个应用程序,我通过要求对服务器的所有请求都包含一个 CSRF 令牌来实现 CSRF 保护。我的应用程序中有很多地方使用 jQuery post 函数,如下所示:
$.post("/ajax/whatever", {data: "my data"}, function(data){
//whatever
});
除非我包含如下 CSRF 令牌,否则上述请求将不起作用:
$.post("/ajax/whatever", {data: "my data", _csrf: "my_csrf_token"}, function(data){
//whatever
});
不幸的是,这要求我修改使用该post
函数的每一段代码。
我想知道是否有任何方法可以拦截对post
函数的所有调用并更新传递的数据以包含丢失的 CSRF 令牌?这可以做到吗?关于从哪里开始的建议?