鍍金池/ 問答/HTML/ axios攔截器獲取不到接口返回的response?

axios攔截器獲取不到接口返回的response?

1,要求實現(xiàn)這樣的功能。在vue中實現(xiàn)異步請求攔截,當?shù)顷懙腸ookie信息過期時跳轉到登陸頁面?,F(xiàn)在用axios的異步攔截獲取不到response的返回信息,代碼如下
圖片描述

當我手動將cookies信息設置過期后再操作頁面上的請求,如圖所示response沒有打印出來,刷新頁面可以打印出來。有點疑惑?

回答
編輯回答
呆萌傻

axios添加全局請求和響應的攔截器,應該只要發(fā)送axios請求都會被攔截,你在vue中實現(xiàn)異步請求攔截,當?shù)顷懙腸ookie信息過期時跳轉到登陸頁面代碼實現(xiàn)能貼出來看下嗎

2017年4月4日 18:49
編輯回答
厭惡我

我的源碼 我創(chuàng)建一個 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作為參數(shù),登錄成功后跳轉到該路由
            })
          } else {
            store.commit('USER_LOGOUT')
          }
      }
    }
    return Promise.reject(error.response)
  }
)
2017年12月13日 04:33