在AngularJS
$resource
调用服务器之后,有没有办法阅读使用所有参数(真正调用过的URL)展开的网址模板?
当我想记录实际的URL时,它是为了记录目的。
答案 0 :(得分:0)
你可以用拦截器来实现这一点。这样你就不必将你的日志记录内容添加到所有的$ resources中了。
这适用于你的app.js
// register the interceptor as a service
$provide.factory('loggingInterceptor', function($q) {
return {
// optional method
'request': function(config) {
return config;
},
// optional method
'requestError': function(rejection) {
// log your error
return $q.reject(rejection);
},
// optional method
'response': function(response) {
// do something on success
return response;
},
// optional method
'responseError': function(rejection) {
// log your error
return $q.reject(rejection);
}};
});
$httpProvider.interceptors.push('loggingInterceptor');
顺便说一句,您可以从请求方法中的' config对象获取网址。只需执行console.log(config)并从那里获取它。我认为它的config.url
有关拦截器主题下AgularJS $http service文档中的拦截器的更多信息。