# uniapp踩坑:編譯H5解決瀏覽器跨域問題
~~~
uniapp編譯到app是不存在跨域問題的,但是編譯到H5就會有跨域問題。記錄一下工作中遇到跨域及解決跨域方法
復制代碼
~~~
## 方法一: 直接編譯Hbuilder內置瀏覽器,能解決跨域,但是內置瀏覽器調試沒有谷歌爽
## 方法二: 在manifest.json文件中配置跨域,該方法類似vue.config.js中的devServer
### 步驟一
~~~javascript
"h5" : {
"devServer" : {
"disableHostCheck" : true, // 開啟可以用自己的域名
"proxy": {
"/api": {
"target": "https://www.test.com",
"changeOrigin" : true,
"secure" : false,
"pathRewrite": { //匹配請求路徑里面有 /api 會替換成https://www.test.com
// 舉例:/api/api/user => https://www.test.com/api/user
"^/api": ""
}
}
}
}
}
復制代碼
~~~
### 步驟二 很重要,很多人配置了步驟一沒效果,因為步驟二沒配置好
~~~
就是接口請求的時候,域名要改為/api,不能是正式域名,因為pathReweite已經幫你轉了
舉個栗子
baseUrl = process.env.NODE_ENV === 'development' ? '/api' : 'https://www.test.com'
然后uni.request請求的url應該是這樣:baseUrl + '/user/info'
然后瀏覽器看到的請求地址應該是
http://localhost:8080/user/info
復制代碼
~~~
## 方法三 :直接在項目根目錄創建一個vue.config.js文件,配置跟方法二一樣
~~~
該方法跟2一樣的,uniapp會識別這個vue.config.js文件,不過manifest.json的優先級
要高于vue.config.js文件
~~~
- 前端指南
- 基礎
- HTML、HTTP、web綜合問題
- css部分
- 學習指南
- 開發指南
- css指南
- JavaScript
- 視圖、文件
- canvas
- 二維碼的生成
- 64碼及圖片
- weui
- Promise
- 第三方js
- 網絡請求
- 字符串,數組,時間
- 時間類
- Css
- 布局封裝
- 媒體布局
- 九宮格圖片自適應
- 兩行顯示,且省略
- uni-app
- uniapp踩坑指南
- 表單類
- 商品規格
- 頁面操作
- H5端返回按鈕不顯示
- H5解決瀏覽器跨域問題
- uView——Waterfall 瀑布流
- uniapp中使用復制功能(復制文本到粘貼板)
- 動態導航欄的實現
- React
- React基礎
- 微信小程序
- 上傳多圖
- uni-app 微信小程序生成小程序碼二維碼帶參數
- 小程序分享圖片給好友,到朋友圈,保存到本地
- 緩存封裝
- Vue
- 深度作用選擇器deep
- 使用js實現列表無限循環滾動(橫向)
- js 無限循環垂直滾動列表
- 可視化
- AntV
- 玫瑰圖