angular 中的处理状态

Handle status in angular

我在 angular 7.

中有关注
public deleteId(pId){
    return this.http.delete<any>(this.deleteUrl(pId), {observe: 'response'})
      .pipe(catchError(this.handleError));
  }

删除方法(我要response.status这里的202代码)

public deleteMethod(): void {
    this.service.deleteId(this.id)
      .subscribe(response => {

       console.log(`Delete response ` , response);

        if(response.status === 200) {
          console.log('Deleted successfully');
        }
       else if(response.status === 202) {
          console.log('something else'); // I am not getting response.status here
        }
    });
  }

我正在正确获取状态代码 200,但是,我正在使用 handleError 方法获取 202。我想要 202 作为回应。我怎样才能得到它?

private handleError(error: HttpErrorResponse) {
  //It sends me to this function.
}
public deleteMethod(): void {
this.service.deleteId(this.id)
  .subscribe(response => {

   console.log(`Delete response ` , response);

    if(response.status === 200) {
      console.log('Deleted successfully');
    }
  },
  err => {
    console.log(err.status); // ----> Here's your error
    if(err.status === 202) {
      // do your stuff
    }
  }
);

}

最后我得到了以下解决方案:

public deleteId(pId){
    return this.http.delete<any>(this.deleteUrl(pId), {observe: 'response', responseType: 'text' as 'json'})
      .pipe(catchError(this.handleError));
 }

已添加, responseType: 'text' as 'json'