$http.get(…)。成功不是一个函数

我有以下代码:

应用程序控制器(’MainCtrl’,函数($scope,$http){
$http.get(’api/url-api’)
.success(函数(数据、状态、标题、配置){
}
}

在我的本地环境中,工作正常,但在服务器中,返回以下错误:

TypeError:$http.get(…)。成功不是一个函数

有什么想法吗?谢谢

.success语法在1.4.3版之前是正确的

对于Angular v.1.6之前的版本,必须使用then方法。then()方法有两个参数:一个成功和一个错误回调,该回调将通过响应对象调用

使用then()方法,将callback函数附加到返回的promise

大概是这样的:

应用程序控制器(’MainCtrl’,函数($scope,$http){
$http({
方法:“GET”,
url:’api/url api’
}).然后(功能(响应){
},函数(错误){
});
}

请参阅此处的参考资料

快捷方式方法也可用

$http.get('api/url-api')。然后(successCallback,errorCallback);
函数成功回调(响应){
//成功代码
}
函数errorCallback(错误){
//错误代码
}

您从响应中获得的数据应为JSON格式。
JSON是传输数据的好方法,而且在AngularJS中使用非常方便

2之间的主要区别在于.then()调用返回一个承诺(通过回调返回的值进行解析),而.success()是注册回调的更传统的方法,不返回承诺

发表评论