如何在Angular前端正确处理请求?在我的node.js API中,如果找不到请求的资源,我总是发送状态404。但是发送此消息,导致错误消息出现在控制台中,如下图所示。
我该怎么做才能从浏览器的控制台中隐藏此消息?
我认为可能的解决方案是为所有请求发送状态200,但是带有自定义错误消息和所请求资源的空数组。有人可以在这里给我个提示吗?
糟糕:我目前正在处理类似这样的最终错误:
service.ts
return this.http.get(url, options).pipe(
catchError(this.handleError),
map(response => {
return response['data'] || [];
})
)
private handleError(error: HttpErrorResponse) {
// return an observable with a user-facing error message
return throwError('Something bad happened; please try again later.');
};
答案 0 :(得分:0)
您需要捕获错误,然后可以对错误进行处理:
return this.http.get(url, options).pipe(
catchError(this.handleError),
map(response => {
return response['data'] || [];
})
.catch((e: any) => console.log(e));
)
答案 1 :(得分:0)
flatMap((error: HttpErrorResponse) => {
if (error.status != 200) {
return throwError(error)
} else {
return new Observable<void>(observer => observer.complete());
}
})