0
我有一個需要CSRF令牌每次調用一個簡單的AJAX請求,我定義它,像這樣:我怎麼可以在ngResource設置的默認參數去進行後期
app.factory('auth', ['$resource', '$cookies', function($resource, $cookies){
var getCsrf = function() {
//get csrf token from cookie
};
return {
login: $resource('auth/login', {}, {
'q' : {
method: 'POST',
params: {csrf_token: getCsrf()}
}
}),
// ... some more requests
};
}]);
我的理解它,你可以指定默認url
參數作爲第二參數的$resource()
-call,在我的情況下是空對象{}
。顯然,我在params: ...
下配置對象中設置的數據也通過GET發送,而不是通過指定的POST方法發送。
一種方法是手動將csrf_token放在我要調用api函數的地方,但我想保持它乾淨。有沒有辦法告訴哪些方法用於默認參數?所以我可以簡單地使用..
auth.login.q(email, password, ...).then(...);
..不必在我所有的調用中實現csrf-getter函數。另外我對AngularJS比較新,所以一個簡單的答案會很棒!
您可以製作資源包裝。 – Rob