ReactJS ловит ошибку HTTP - PullRequest
0 голосов
/ 30 мая 2018

У меня следующая проблема: я выполнил аутентификацию с использованием Spring Security, и после ввода неверных данных он (сервер java) отправляет код состояния HTTP 401. Изображение

Я не могу пойматьэто исключение.Я использую API выборки, но catch не работает и response.status тоже.Как я могу решить это?

login = (event) => {
  event.preventDefault();
  var data = {username: this.refs.username.value, password: this.refs.password.value};
  var that = this;
  fetch('http://localhost:8080/login',{
    method: 'POST',
    mode: "no-cors",
    body: JSON.stringify(data),
    headers:{
      'Content-Type': 'application/json'
    }
  }).then( (response) => {
    console.log(response);
    if (response.status !== 200) {
      console.log('Looks like there was a problem. Status Code: ' +
        response.status);
    } else {
      console.log('Yeeee man, you can login');
      this.props.history.push('/');
    }
  }).catch(error => console.log('Error ' + error));
}

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Я нашел решение.Проблема была в режиме: «без корс».Это означает, что я могу отправить запрос, но не смогу прочитать ответ ... Поэтому мне нужно было включить cors в java.

0 голосов
/ 30 мая 2018

Сначала проверьте объект console.log(response.status) или попробуйте использовать response.data.status

Иногда ответ помещается внутри объекта data

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