uniapp + uView1.0 H5端 解决跨域问题

该文章只讨论由前端来解决跨域!

如果你是早期(比如uview1.8.3 ...... )从uniapp插件市场下载官方代码到本地进行修改,

然后后续的项目是基于之前你封装好的这个base项目来进行开发的话,

再按照网上说的 跨域解决方案 来尝试进行解决的话,可能会有问题。。。

解决方法:

1、从HBuilder X里新建一个 uni-app 默认模板 的项目。

2、然后再把之前项目里的文件一个个复制过来(注意不要替换新项目文件下的 manifest.json 文件,有可能就是该文件导致你们解决跨域一直不生效)

3、直接在新项目的根目录下创建一个 vue.config.js 文件,并在里面配置devServer

module.exports = {
	devServer: {
		// 调试时允许内网穿透,让外网的人访问到本地调试的H5页面
		disableHostCheck: true,
		port: 8082,
		proxy: {
			'/': {
				target: "https://xxx.xxx.com",
				changeOrigin: true,
				pathRewrite: {
					'^/': '/'
				}
			}
		},
	},
}

4、在 http.interceptor.js(http拦截器)中 不要带上 baseUrl 或者把 baseUrl值设置为空字符串

5、在 http.api.js(http接口API集中管理)中,所有请求路径都要以 "/" 开头

这样当我们写 "/insurer/api/banner/list" 时,

表示从本地的 ”http://localhost:8080/insurer/api/banner/list“

转发到目标地址 ”https://xxx.xxx.com/insurer/api/banner/list“


 

猜你喜欢

转载自blog.csdn.net/qq_23375733/article/details/127200996