AngularJs工厂类型:错误request.then(...)错误不是函数

时间:2017-01-15 13:41:57

标签: angularjs

我的service代码:

application.factory('Http', function($http) {
    var base_url = "Angular_Database/server.php";
    return {
        post: function(form_data) {
            var request = $http({
                method: 'POST',
                url: base_url,
                data: form_data
            });
            return request;
        },

        send: function(request, callback) {
            request.then(function(response) {
                callback(response);
            }).error(function(Object) {
                alert(Object.data);
            });
        }
    }
})

这里,问题出在.then()

我的console说:

  

类型:错误request.then(...)错误不是函数

2 个答案:

答案 0 :(得分:2)

error()开始,HttpPromise对象中没有Angular 1.5.X函数(基于评论)。您需要使用catch()函数而不是它。

request.then(function(response) {
          callback(response);
        }).catch(function(Object) {
               alert(Object.data);
           });

答案 1 :(得分:0)

也可能是:

    request.then(function(response) {
       callback(response);
    }, function(error){
       alert(error.data);
    })