我想知道如果 API 调用返回 404 错误,如何以 Angular 打破函数链,如果是 200 响应,如何继续链。我想执行一串函数,其中一个是对 API 的 GET 请求。这要么返回 200 成功,要么返回 404 错误。如果是 200,我希望链继续执行,而如果是 404 错误,我希望它中断。
这可能吗?我的做法是否正确?
我的代码如下:
在我的 service.js 文件中
function breakIfErrorReturned () = {
promiseChain = saveSignupData(Data)
.then(doPreTest)
.then(TestResource.doTestPayment)
.then(makeFinalRailsCall(id))
.then(sendAnalytics)
return promiseChain;
}
function makeFinalRailsCall(tracking_id){
return service.finalTestCheck.checkPackage({tracking_id:tracking_id})
.$promise.then(function (data) {
console.log(data)
}, function (errorResponse) {
return;
});
}
最佳答案
通过向我的代码添加一个 catch()
语句,我可以在从 GET 请求收到 404 错误时中断链。
function makeFinalRailsCall(tracking_id){
return service.finalTestCheck.checkPackage({tracking_id:tracking_id})
.$promise.then(function (data) {
console.log(data)
}).catch(function(err){
console.log(err)
});
}
关于javascript - 如果 GET 请求返回 404 错误,则中断 javascript 链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32591197/