gpt4 book ai didi

angular - Angular Intercept catcherror还捕获除404之外的其他错误,并阻止了应用程序按原样工作

转载 作者:行者123 更新时间:2023-12-03 08:40:25 25 4
gpt4 key购买 nike

我有一个拦截器,捕获404错误

拦截(要求:HttpRequest,下一个:HttpHandler):可观察>

    return next.handle(req).pipe(retry(1),
catchError((error) => { // catch error after retry
console.log('err');
if (error instanceof HttpErrorResponse) {
if (error.status === 404) {
console.log('errrr');
}
}
}

问题是当错误不是404错误时,应用程序会在遇到422错误后停止正常运行。如果错误不是404,则该应用程序应继续按原样工作。我认为它与catcherror有关,但Im丢失了。感谢您的帮助。

最佳答案

catchError仍然需要返回一些东西。如果它没有返回一个可观察的对象,则可能是错误。
将其更改为此,以便可以处理404,但其他一切都将被抛弃

catchError((error) => { // catch error after retry
console.log('err');
if (error instanceof HttpErrorResponse) {
if (error.status === 404) {
console.log('errrr');
return EMPTY;
}
}
throw error;
}

关于angular - Angular Intercept catcherror还捕获除404之外的其他错误,并阻止了应用程序按原样工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62056412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com