我有一個應用程序,我通過要求服務器的所有請求包含一個CSRF令牌來實現CSRF保護。我在我的應用程序很多地方使用jQuery的崗位職能象下面這樣:是否可以爲所有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令牌?這可以做到嗎?從哪裏開始的建議?
有一個全球性的ajaxSend處理程序,但我不知道這是否讓你修改AJAX選項。 –
另請參閱此[發佈](http://stackoverflow.com/questions/11930295/jquery-override-post-function) – pknoe3lh