为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

收到一只叮咚 2019-03-14 18:15:26
1,要求实现这样的功能。在vue中实现异步请求拦截,当登陆的cookie信息过期时跳转到登陆页面。现在用axios的异步拦截获取不到response的返回信息,代码如下当我手动将cookies信息设置过期后再操作页面上的请求,如图所示response没有打印出来,刷新页面可以打印出来。有点疑惑?
查看完整描述

2 回答

?
倚天杖

TA贡献1828条经验 获得超3个赞

我的源码 我创建一个 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)

  }

)


查看完整回答
反对 回复 2019-03-18
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

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


查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 6320 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信