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