Проблема с получением ошибки с сервера — вместо этого получение общей ошибки от axios

#javascript #vue.js #http #error-handling #axios

#javascript #vue.js #http #обработка ошибок #axios

Вопрос:

Я пишу обработку аутентификации в своем интерфейсе, вход в систему работает успешно, но мне нужна обработка, когда это не удается.

 async handleLogin() {
  const response =  axios.post('/api/v1/auth/sign_in', {
    email: this.email,
    password: this.password
  }).then( (d) => {
    console.log('data: '   d)
  }).catch( (e) => {
    console.log('error: '   e)
  })
 

Вывод в консоль:

 POST http://localhost:3000/api/v1/auth/sign_in 401 (Unauthorized)
error: Error: Request failed with status code 401
 

Я знаю, что сервер выдает более точную и точную ошибку, но она никогда не отображается в ответе.

На вкладке «Моя сеть» я получаю:

 {"success":false,"errors":["Invalid login credentials. Please try again."]}
 

Я бы хотел, чтобы это было в моем ответе. Я также получаю подробную ошибку в postman.

Есть идеи, что является причиной этого и как получить фактическую ошибку сервера?

Комментарии:

1. Вы проверили документацию для обработки ошибок ? Вы, вероятно, увидели бы больше информации, если бы не преобразовывали неявно error в строку. Попробуйте console.error(error)

2. Копирование блока в улове здесь показало мне, как добраться до ошибки сервера: github.com/axios/axios#handling-errors спасибо.