Подпишитесь, не вызывая ошибку, когда ответ сервера с ошибкой 400 http - PullRequest
0 голосов
/ 19 марта 2020

Я совершенно не понимаю, почему ошибка не запускается

это код, по которому я вызываю сервер

this.userService.createUser(values).subscribe((response)=> {
                this.alertService.showConfirm("Usuario creado");
                this.dialogRef.close(response);
            }),error => this.alertService.showError({message: error.error.message}) 

эта ошибка не запускается

create user имеет следующий код

 createUser(usuario): Observable<boolean>{
    const accessToken  = this.webStorageService.getAccessToken();
    return this.http.post<boolean>(`${this.usersUrl}?access_token=${accessToken}`, usuario,{ headers: this.headers });

, где this.http - это HttpClient от AngularCommon, а заголовки -

this.headers = new HttpHeaders().set('Content-Type', 'application/json');

У меня есть перехватчик ответов, который перехватывает каждый ответ об ошибке, важный код перехватчик следующий

return throwError(err);

, потому что у меня есть перехватчик только для того, чтобы сделать что-то, если ошибка http 401, но я посылаю ошибку 400, у меня есть консольный журнал ошибок на перехватчике и это ловит ошибку прекрасно, любая подсказка, почему это не достигает подписки?

Я пытался удалить весь перехватчик, и он тоже не работает, поэтому я предполагаю, что это не проблема перехватчика

1 Ответ

1 голос
/ 19 марта 2020

В строке }),error => this.alertService.showError({message: error.error.message}) первый ) не нужен, не правда ли? Попробуйте изменить эту строку на },error => this.alertService.showError({message: error.error.message}));. Обратите внимание на дополнительные ) в конце этой строки.

Спасибо, что приняли это как ответ, я ценю это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...