@Pogran

Почему не срабатывает правильно обработка ошибок?

У меня есть вот такой метод
editStatusUser(id : number, status : string) :Observable<boolean> {
        return this.http.get('assets/fake/fake-userss.json')
            .map((response: Response) => {
                // Todo: Delete on real data
                return Math.round(Math.random());
            })
            .delay(2000)
            .catch((error: Response) => this.handleError(error));
    }

    private handleError (error: Response | any) {
        // In a real world app, we might use a remote logging infrastructure
        let errMsg: string;
        if (error instanceof Response) {
            console.log(error.json());
            const body = error.json() || '';
            const err = body.error || JSON.stringify(body);
            errMsg = `${error.status} - ${error.statusText || ''} ${err}`;
        } else {
            errMsg = error.message ? error.message : error.toString();
        }
        console.error(errMsg);
        return Observable.throw(errMsg);
    }


Ругается именно на error.json() , пишет SyntaxError: Unexpected token C in JSON at position 0(…) . И не понятно почему, т.к возвращается объект Response , а преобразовать его не может почему-то
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы