我做定制$http
服务,是这个样子:AngularJS服务回报状态
angular.factory('myHttp', function($http){
var obj = {};
obj.get = function(path) {
return $http.get(path).then(function(result){
return result;
},function(result){
console.log("result error:"+path);
return result;
});
}
之后,服务可以像这样使用:
myHttp.get($scope.url).
then(function(response) {
console.log("It's success");
$scope.status = response.status;
$scope.data = response.data;
}, function(response) {
console.log("It's fail");
$scope.data = response.data || "Request failed";
$scope.status = response.status;
});
它返回两个结果成功与失败。然而,即使它失败了,它仍然会在成功部分返回。意思是,如果连接失败,我仍然会在控制台中获得It's success
。
连接失败时,如何使它在失败部分返回?
非常感谢您的回答。您的解决方案适用于返回错误。但是,如果我希望在输出失败前多次重试失败连接,那么如何完成?这似乎不适用于您的解决方案。 – user1995781