как обработать тело ошибки, используя Angular - PullRequest
0 голосов
/ 04 марта 2020

У меня есть конечная точка, которая возвращает ValidDataObject на основе значения, когда значение является действительным, и возвращает SuggestedDataObject, когда значение содержит ошибку.

Нет. код

    this.metaService.read(this.valueOftextField).pipe(takeUntil(this._destroyed$)).subscribe(
      (data) => {
        this.List = data;
        console.log(this.List);
        this.Found = true;
      }, error => {
        this.Found = false;
        console.log(error);
        if (error.status ==='406'){
           this.similar = error.body;
// here i want to map the body of the error , because i expect a list of strings here 
        }
      });

Как мне этого добиться.

1 Ответ

0 голосов
/ 04 марта 2020

Стандартный вызов API выглядит следующим образом

const http$ = this.http.get<Course[]>('/api/courses');

http$
    .pipe(
        map(res => res['payload']),
        catchError(err => {
            console.log('caught mapping error and rethrowing', err);
            return throwError(err);
        }),
        finalize(() => console.log("first finalize() block executed")),
        catchError(err => {
            console.log('caught rethrown error, providing fallback value');
            return of([]);
        }),
        finalize(() => console.log("second finalize() block executed"))
    )
    .subscribe(
        res => console.log('HTTP response', res),
        err => console.log('HTTP Error', err),
        () => console.log('HTTP request completed.')
    );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...