网上多数的解决办:
在vue.config.js文件下进行代理,但是这个的话目前的一个作用不是很大,有时候都没调用到这个文件的代理
manifest.js文件下进行代理的话,还是比较有用的,但是在这个文件的代理的话,要考虑到的是,自身要代理的url,有多种情况的
如下是两种方法
第一种:
目前很多的一种写法
"proxy": {
"/api": { // 定义了一个代理规则,该规则将匹配所有以"/api"开头的请求路径
"target": "", // 指定了目标服务器的地址,即所有匹配的请求都将被转发到这个地址
"changeOrigin": true, // 设置为true时,会修改请求头中的host字段,使其与目标URL一致。这对于需要验证请求来源的服务器很重要
"pathRewrite": { // 用于重写请求的URL路径
"/^api": ""
}
}
}
第二种:
如果你的意图是将所有以
/api
开头的请求转发到https://xxxtest.xxx.com/xxxx/services路径下,那么应该直接在target
中指定完整的URL想要在前端通过
/api/...
来访问它们,你可能不需要pathRewrite
,除非后端还需要进一步的路径处理
"proxy": {
"/api": {
"target": "https://xxxtest.xxx.com/xxxx/services", // 注意这里直接包含了/xxxx/services
"changeOrigin": true
}
}
以上就是关于uniapp的H5端的跨域两种解决办法