自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Vue開發(fā)使用Axios遇到了大坑!

開發(fā) 前端
最近在趕項目,項目需要一定基礎(chǔ)錄入數(shù)據(jù),所以邊開發(fā)邊讓同事進(jìn)行數(shù)據(jù)錄入,但是遇到了天坑!

最近在趕項目,項目需要一定基礎(chǔ)錄入數(shù)據(jù),所以邊開發(fā)邊讓同事進(jìn)行數(shù)據(jù)錄入,但是遇到了天坑!

我使用angular的http請求,局域網(wǎng)內(nèi)連接開發(fā)工程,一切正常!

Vue開發(fā)使用Axios遇到了大坑!

 

使用Vue的axios連接部分正常,部分不正常,服務(wù)器狀態(tài)碼200,服務(wù)器端控制臺也不報錯。但是頁面請求就是報錯。使用iPhone手機報錯,換華為安卓手機也是一樣的報錯,安卓手機不知道怎么調(diào)試,使用macOS的Safari瀏覽器可以調(diào)試iPhone手機瀏覽器,調(diào)試報錯,但是不知道原因。就單純報錯,服務(wù)器是沒有任何問題。錯誤代碼是200。

Vue開發(fā)使用Axios遇到了大坑!

 

也就是說,我PC版本瀏覽器縮放成手機瀏覽器一切正常,真機報錯,如果說是ssl證書等攔截,但實際上是有的請求報錯有的請求不報錯,一般報錯的是服務(wù)器返回一定數(shù)據(jù)的頁面會報錯。

換成局域網(wǎng)其它PC電腦訪問,很多頁面正常,部分頁面異步請求不正常,所有的http請求都統(tǒng)一在一個axios工具里封裝的。為何有些報錯,有些不報錯呢?太奇怪了唉。

但是在我工程開發(fā)的本機一切全部都正常!比如區(qū)域數(shù)據(jù)加載,數(shù)據(jù)為全云南省行政區(qū)數(shù)據(jù),在我本機請求正常,但局域網(wǎng)其它瀏覽器訪問就網(wǎng)絡(luò)請求報錯,控制臺顯示為incomplete encoding?

但是編碼都是utf-8完全和其它請求和返回一致。我本機也可以正常加載,更離奇的是,打包成生產(chǎn)模式部署到阿里云服務(wù)器上也全部正常,就局域網(wǎng)跨電腦訪問就異常,也不是全部異常,就是那么部分接口異常。

Vue開發(fā)使用Axios遇到了大坑!

 

使用的代碼為ant design vue pro后臺管理模板預(yù)設(shè)的axios封裝,代碼如下:

  1. import Vue from 'vue' 
  2. import axios from 'axios' 
  3. import store from '@/store' 
  4. import notification from 'ant-design-vue/es/notification' 
  5. import { VueAxios } from './vueAxios' 
  6. import { ACCESS_TOKEN, ENTERPRISE_TOKEN } from '@/store/mutation-types' 
  7. import Constant from '@/config/ann.config' 
  8.  
  9. // 創(chuàng)建 axios 實例 
  10. const service = axios.create({ 
  11.   baseURL: Constant.API_URL, // api base_url 
  12.   timeout: 6000 // 請求超時時間 
  13. }) 
  14.  
  15. const err = (error) => { 
  16.   if (error.response) { 
  17.     const data = error.response.data 
  18.     const token = Vue.ls.get(ACCESS_TOKEN) 
  19.     if (error.response.status === 403) { 
  20.       notification.error({ 
  21.         message: 'Forbidden'
  22.         description: data.message 
  23.       }) 
  24.     } 
  25.     if (error.response.status === 401 && !(data.result && data.result.isLogin)) { 
  26.       notification.error({ 
  27.         message: 'Unauthorized'
  28.         description: 'Authorization verification failed' 
  29.       }) 
  30.       if (token) { 
  31.         store.dispatch('Logout').then(() => { 
  32.           setTimeout(() => { 
  33.             window.location.reload() 
  34.           }, 1500) 
  35.         }) 
  36.       } 
  37.     } 
  38.   } 
  39.   return Promise.reject(error) 
  40.  
  41. // request interceptor 
  42. service.interceptors.request.use(config => { 
  43.   // 登錄用戶身份認(rèn)證Token 
  44.   const token = Vue.ls.get(ACCESS_TOKEN) 
  45.   if (token) { 
  46.     config.headers['Ann-Token'] = token // 讓每個請求攜帶自定義 token 請根據(jù)實際情況自行修改 
  47.   } 
  48.   // 當(dāng)前操作企業(yè)授權(quán)Token 
  49.   const tokenE = Vue.ls.get(ENTERPRISE_TOKEN) 
  50.   if (tokenE) { 
  51.     config.headers['Ann-E-Token'] = tokenE // 讓每個請求攜帶自定義 token 請根據(jù)實際情況自行修改 
  52.   } 
  53.   return config 
  54. }, err) 
  55.  
  56. // response interceptor 
  57. service.interceptors.response.use((response) => { 
  58.   return response.data 
  59. }, err) 
  60.  
  61. const installer = { 
  62.   vm: {}, 
  63.   install (Vue) { 
  64.     Vue.use(VueAxios, service) 
  65.   } 
  66.  
  67. export { 
  68.   installer as VueAxios, 
  69.   service as axiosService 
  70.  
  71. 有沒有遇到同樣問題的道友呢? 

有沒有遇到同樣問題的道友呢? 

 

責(zé)任編輯:龐桂玉 來源: 今日頭條
相關(guān)推薦

2024-07-16 08:36:33

線程池父子任務(wù)微服務(wù)

2021-05-12 13:38:47

云計算

2013-07-26 09:16:13

SwiftOpenStackSwiftStack

2021-10-26 08:22:38

消息堆積擴容RocketMQ

2015-10-12 11:26:12

iOS 9適配

2019-03-25 10:30:19

開發(fā)技能代碼

2021-07-28 10:13:00

公有云云計算云遷移

2015-12-22 10:10:43

2021-10-18 22:29:54

OOMJava Out Of Memo

2023-09-14 10:55:16

2011-12-21 15:07:28

開源云計算

2023-04-16 19:34:01

2021-11-17 08:24:47

Vue3 插件Vue應(yīng)用

2024-11-06 10:16:22

2020-08-06 15:50:26

微信無法登陸移動應(yīng)用

2017-10-24 12:32:03

小程序APPbug

2014-04-14 10:21:15

開發(fā)運維DevOps

2015-10-10 15:37:20

軟件沖突OS X

2023-10-05 18:49:12

.Net?Newtonsof源碼

2025-04-16 02:20:00

點贊
收藏

51CTO技術(shù)棧公眾號