Почему угловая бесконечность повторяется после неудачного http-запроса? - PullRequest
0 голосов
/ 19 сентября 2019

После обновления до Angular 8.2.5 (7) все неудачные запросы начинаются, бесконечность повторяет этот запрос.В консоли я увидел это:

POST http://url/api/usersettings/save 400 (Bad Request) zone.js:3331 
http://url/api/usersettings/save 400 (Bad Request)

, и это повторяется до тех пор, пока я не перезагрузлю страницу

мой код

this.userService.login(this.credentials.email, this.credentials.password)
                .finally(() => this.isRequesting = false)
                .subscribe(
                    result => {
                        this.router.navigate(['/']);
                    },
                    error => this.errors = error);

login(email, password) {
    const headers = new HttpHeaders()
      .set('Content-Type', 'application/json')
      .set('Access-Control-Allow-Origin', '*')
      .set('Accept-Language', this.translate.currentLang);
    return this.http
      .post<any>(
        this.baseUrl + 'api/auth/login',
        JSON.stringify({ email, password }),
        { headers }
      )
      .pipe(
        map(response => {
          localStorage.setItem('auth_token', response.auth_token);
          localStorage.setItem('user_id', response.id);
          this.loggedIn = true;
          this._authNavStatusSource.next(true);
          return true;
        }),
        catchError(this.handleError)
      );
  }


это метод handleError, но при отладке этого методане звоните.есть ощущение, что после публикации ничего не вызывается

    const applicationError = error.headers
      ? error.headers.get('Application-Error')
      : '';

    // either applicationError in header or model error in body
    if (applicationError) {
      return Observable.throw(applicationError);
    }
    let modelStateErrors = '';
    const serverError = error.error;

    if (error) {
      for (const key in serverError) {
        if (serverError[key] && key !== '') {
          serverError[key].forEach(function(element) {
            modelStateErrors += element + ' ';
          });
        }
      }
    }

    modelStateErrors = modelStateErrors = '' ? null : modelStateErrors;
    return Observable.throw(modelStateErrors || 'Server error');
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...