我正在尝试很多方法,其中一些:
$http({
method: 'GET',
url: '/Url'}).then(function successCallback(response) {
}, function errorCallback(response) {
});
var req = {
method: 'GET',
interceptor: {
response: function (response) {
console.log(response)
var result = response.resource;
result.$status = response.status;
return result;
}
},
url: url,
headers: {
'Authorization': token
}
}
$http(req).success(function (data, status, headers, config) {
console.log(data, status, headers, config);
}).error(function (data, status, headers, config) {
console.log(data, status, headers, config);
});
还有很多其他没有结果,所以我真的需要帮助! 我很感激任何帮助
答案 0 :(得分:0)
第一种方法看起来很接近你需要的东西。
function successCallback(response) {
console.log('status code: ', response.status);
}
目前回调是空的,所以我们正在访问响应对象并从中记录状态代码。
答案 1 :(得分:0)
第一种方式是更直接的方式,但我非常确定响应函数应该是匿名的。在两者中放入console.log()会有所帮助。
$http({
method: 'GET',
url: '/Url'
}).then(function(response) {
console.log(response.status);
}, function(response) {
console.log(response.status);
});
如果这不起作用,只需将console.log(响应)放在两者中,看看它能得到什么。
答案 2 :(得分:0)
如果要跟踪所有请求,可以使用httpinterceptor:
myModule.factory('myHttpInterceptor', function ($q) {
return {
response: function (response) {
// do something with success response
// status in response.status
return response;
},
responseError: function (response) {
// do something with error response
// status in response.status
return $q.reject(response);
}
};
});
myModule.config(function ($httpProvider) {
$httpProvider.interceptors.push('myHttpInterceptor');
});