Nuxt скрыть всплывающее сообщение об ошибке по запросу 401 - PullRequest
0 голосов
/ 08 января 2019

Когда я меняю свое имя пользователя в приложении, которое я создал. При следующем вызове мой бэкэнд возвращает код 401, потому что вам нужно снова пройти аутентификацию. Это связано с тем, что токен jwt частично основан на имени пользователя.

В моем плагине axios у меня есть перенаправление на страницу входа:

  $axios.onError(error => {
    const code = parseInt(error.response && error.response.status)
    if (code === 401 || code === 403) {
      app.$auth.logout()
    } else {
      store.commit('snackbar/show', {
        'text': 'Something went wrong',
        'color': 'red'
      })
    }
  })

Это функция выхода из системы:

logout () {
  app.$cookies.remove(this.KEY_NAME)

  store.commit('removeToken')
  const path = app.localePath({ name: 'index' })
  if (process.browser) {
    app.router.push(path)
  } else {
    redirect(path)
  }
}

Он перенаправляет меня на страницу входа в систему, но сохраняет всплывающее окно с ошибкой, как показано на изображениях ниже:

Обычная страница входа: Обычная страница входа

Страница входа после перенаправления с 401: Вход после перенаправления с 401

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

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

...