我的代码是这样的,
app.controller('myController', function($scope, MyService, ...) {
MyService.getInfoFromUrl('MyUrl').then(function(result) {
console.log("Successfully get info from URL ...");
}, function(error) {
console.log("Server error ...");
console.log(error);
});
});
所以当我用错误路径测试时,我明白了 服务器错误 ... 未定义
获取错误信息的正确方法是什么?
答案 0 :(得分:1)
试试这个
app.controller('myController', function($scope, MyService, ...) {
MyService.getInfoFromUrl('MyUrl').success(function(result) {
console.log("Successfully get info from URL ...");
}).catch(function(error){
console.log("Server error ...");
console.log(error);
});
});
答案 1 :(得分:1)
我认为您需要处理getInfoFromUrl()中的服务器错误,然后当您的承诺出现错误时,请调用 -
getInfoFromUrl(){
return new Promise(function(resolve,reject){
//some code to get info
if(noErrors){
resolve(Info); //This will return value to first callback
else if(hasErrors){
reject(error); //This will throw error
}
});
}
reject(error)
然后按原样使用Wasiq Muhammad的代码。
MyService.getInfoFromUrl('MyUrl').success(function(result) {
console.log("Successfully get info from URL ...");
}).catch(function(error){
console.log("Server error ...");
console.log(error);
});
希望有所帮助。