哪个响应状态代码转到Angular 6+ httpClient中的catchError?

问题描述 投票:-1回答:1

在Angular 6+ httpClient中,可以配置请求以获取整个响应。

可观察到的响应可以通过管道传输到mapcatchError运营商。

什么时候执行通过map运算符和什么时候到catchError

它取决于响应状态代码吗?

例如,如果response.status === 200然后去map,否则去catchError

如果不仅状态200进入map,那么还有哪些?

哪些状态去catchError

getData(): Observable<[]> {
    return this.http.get(this.apiUrl, {observe: 'response'}).pipe(
        map((response: HttpResponse<any>) => {  
            return response.status === 200;
        }),
        catchError((errorResponse: HttpErrorResponse) =>
            // which value may be logged here?
            console.log(errorResponse.status);
            of(false);
        ));
}

angular angular-httpclient rxjs6
1个回答
1
投票

4xx和5xx状态代码是错误。其他的都是成功的。

http://angular.io/guide/http#getting-error-details

© www.soinside.com 2019 - 2024. All rights reserved.