使用axios拦截器时,如何避免在控制台中显示错误?

时间:2019-04-29 13:49:14

标签: vue.js axios

我使用axios拦截器刷新访问令牌,它们起作用。

axios.interceptors.response.use(
      response => response,
      async error => {
        if ((error.response.status === 401 || error.response.status === 403) &&
          error.response.data.code === 'token_not_valid' &&
          sessionStorage.refreshToken) {
          let response = await axios({
            url: `${serverJWTUrl}/api/token/refresh/`,
            method: 'post',
            withCredentials: true,
            data: {refresh: sessionStorage.refreshToken}
          })

          sessionStorage.setItem('accessToken', response.data.access)
          error.config.headers.Authorization = 'Bearer ' + response.data.access
          return Promise.resolve(axios.request(error.config))
        }

        return Promise.reject(error)
      }
    )

axios拦截器拦截后台的401错误和403错误,它们请求带有刷新令牌的新访问令牌,一切正常,但是403错误显示在控制台中。

感谢您的回答。

0 个答案:

没有答案