uniapp存在跨域嘛
uniapp跨域问题分析
uniapp在开发过程中确实会遇到跨域问题,主要出现在以下场景:
- H5端开发时请求不同域名的接口
- 微信小程序等平台对域名有白名单限制
跨域解决方案
H5端解决方案 修改manifest.json文件,配置代理:
"h5": {
"devServer": {
"proxy": {
"/api": {
"target": "http://your-api-domain.com",
"changeOrigin": true,
"pathRewrite": {
"^/api": ""
}
}
}
}
}
小程序端解决方案 需要在小程序管理后台配置合法域名:
- 登录微信公众平台
- 进入开发设置
- 在服务器域名中添加需要请求的域名
通用解决方案 使用uni.request方法时设置withCredentials为false:

uni.request({
url: 'http://example.com/api',
withCredentials: false,
success(res) {
console.log(res.data)
}
})
注意事项
- 生产环境H5仍然需要后端支持CORS
- 本地开发时H5代理只在dev模式下生效
- 小程序必须使用https协议且域名经过ICP备案






