我有以下代码:
应用程序控制器(’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()是注册回调的更传统的方法,不返回承诺