国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

axios攔截設置和錯誤處理方法

2024-05-06 15:21:06
字體:
來源:轉載
供稿:網友

現在vue的官方包已經不更新vue-resource了,轉而推薦axios,下面是項目實戰是總結的axios插件設置:

/** * @file Axios的Vue插件(添加全局請求/響應攔截器) */// https://github.com/mzabriskie/axiosimport axios from 'axios'// 攔截request,設置全局請求為ajax請求axios.interceptors.request.use((config) => { config.headers['X-Requested-With'] = 'XMLHttpRequest' return config})// 攔截響應response,并做一些錯誤處理axios.interceptors.response.use((response) => { const data = response.data// 根據返回的code值來做不同的處理(和后端約定) switch (data.code) { case '0':  // 舉例  // exp: 修復iPhone 6+ 微信點擊返回出現頁面空白的問題  if (isIOS()) {  // 異步以保證數據已渲染到頁面上  setTimeout(() => {   // 通過滾動強制瀏覽器進行頁面重繪   document.body.scrollTop += 1  }, 0)  }  // 這一步保證數據返回,如果沒有return則會走接下來的代碼,不是未登錄就是報錯  return data // 需要重新登錄 case 'SHIRO_E5001':  // 微信生產環境下授權登錄  if (isWeChat() && IS_PRODUCTION) {  axios.get(apis.common.wechat.authorizeUrl).then(({ result }) => {   location.replace(global.decodeURIComponent(result))  })  } else {  // 否則跳轉到h5登錄并帶上跳轉路由  const search = encodeSearchParams({   next: location.href,  })  location.replace(`/user/login?${search}`)  }  // 不顯示提示消息  data.description = ''  break default: } // 若不是正確的返回code,且已經登錄,就拋出錯誤 const err = new Error(data.description) err.data = data err.response = response throw err}, (err) => { // 這里是返回狀態碼不為200時候的錯誤處理 if (err && err.response) { switch (err.response.status) {  case 400:  err.message = '請求錯誤'  break  case 401:  err.message = '未授權,請登錄'  break  case 403:  err.message = '拒絕訪問'  break  case 404:  err.message = `請求地址出錯: ${err.response.config.url}`  break  case 408:  err.message = '請求超時'  break  case 500:  err.message = '服務器內部錯誤'  break  case 501:  err.message = '服務未實現'  break  case 502:  err.message = '網關錯誤'  break  case 503:  err.message = '服務不可用'  break  case 504:  err.message = '網關超時'  break  case 505:  err.message = 'HTTP版本不受支持'  break  default: } } return Promise.reject(err)})axios.install = (Vue) => { Vue.prototype.$axios = axios}export default axios

以上這篇axios攔截設置和錯誤處理方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持錯新站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 修武县| 固始县| 北海市| 青海省| 吐鲁番市| 岳阳县| 宿迁市| 台山市| 浪卡子县| 岗巴县| 宝清县| 达拉特旗| 鸡东县| 安国市| 盐池县| 如东县| 旅游| 荥经县| 阜宁县| 贵港市| 房产| 咸丰县| 保山市| 平阴县| 定安县| 轮台县| 巴林左旗| 福泉市| 巴东县| 门头沟区| 肇庆市| 武汉市| 汝城县| 连云港市| 南宫市| 贵定县| 皮山县| 德庆县| 格尔木市| 临沂市| 通江县|