vue項目打包爲APP,靜態資源正常顯示,但API請求不到數據

Vue項目經過Hbuild打包爲APP後,靜態文件正常顯示,但並無像開發時那樣請求到數據。
這是爲何?由於APP並無跨域,不存在跨域一說。
咱們在開發的時候,js在不一樣的域之間進行數據傳輸或通訊,因此會給項目設置代理來跨域
config下的index.js
好比這個ios

proxyTable: {
  '/api':{
    target: 'http://XXX/xxx/v3',
    changeOrigin: true,
    pathRewrite: {
      '^/api': ''
    }
  }
}

在開發時這樣作是沒錯的,但咱們在打包時就不用設置這個跨域了,打包前直接將這個跨域註釋掉,而後將API請求地址改成絕對地址。例如這樣axios

let SwipeImg = () => axios({
  // url: 'api/basic/advert/lists',
  url: 'http://xxx.xxx.xx.xx/api/v3/basic/advert/lists',
  params: {
    auth_key: key
  }
})

改好以後在經過Hbuild打包後,APP數據就顯示正常了
這裏要注意的是,我將打包後的APP放在夜神模擬器裏,數據顯示仍是不正常,但放在本身手機裏就顯示正常,這點要注意api

相關文章
相關標籤/搜索