axios拦截器获取不到接口返回的response?

发布于 2022-09-06 15:38:30 字数 288 浏览 14 评论 0

1,要求实现这样的功能。在vue中实现异步请求拦截,当登陆的cookie信息过期时跳转到登陆页面。现在用axios的异步拦截获取不到response的返回信息,代码如下
图片描述

当我手动将cookies信息设置过期后再操作页面上的请求,如图所示response没有打印出来,刷新页面可以打印出来。有点疑惑?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

筱果果 2022-09-13 15:38:30

axios添加全局请求和响应的拦截器,应该只要发送axios请求都会被拦截,你在vue中实现异步请求拦截,当登陆的cookie信息过期时跳转到登陆页面代码实现能贴出来看下吗

酒儿 2022-09-13 15:38:30

我的源码 我创建一个 axios 实例instance

// respone拦截器
instance.interceptors.response.use(
  response => {
    return response
  },
  error => { // 默认除了2XX之外的都是错误的,就会走这里
    if (error.response) {
      switch (error.response.status) {
        case 401:
          if (store.state.gameId) {
            store.commit('DELETE_TOKEN')
            router.replace({ // 跳转到登录页面
              path: '/login?gameId=' + store.state.gameId,
              query: {redirect: router.currentRoute.fullPath, gameId: store.state.gameId} // 将跳转的路由path作为参数,登录成功后跳转到该路由
            })
          } else {
            store.commit('USER_LOGOUT')
          }
      }
    }
    return Promise.reject(error.response)
  }
)
简单 2022-09-13 15:38:30
console.log(response.data)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文