vue3下的uniapp跨域踩坑

uniapp vue3 H5跨域踩坑

开发移动端H5的时候由于后端接口没有做跨域处理,因此需要做下服务器代理,于是百度搜索了uniapph5的跨域配置

manifest下的h5配置proxy,大概是这样:

js 复制代码
"h5": {
		"devServer": {
			"https": false,
			"proxy": {
				"/api": {
					"target": "服务器地址",
					"pathRewirte": {
						//路径重写
						"^/api": "/"
					}
				}
			}
		}
	}

但是配置完后,怎么都不生效,一直返回404,开始以为是没重启项目,端口占用等等一系列的问题

逐个排查后发现,配置生效了,服务器的确是代理了,但是pathRewirte的地址重写不会生效

查看uniapp文档

pathRewirtewebpack的写法,因此在vue2的项目中不存在这个问题,vue3中使用的vite需要使用函数写法重写路径,但是json不支持写函数,因此无法重写路径。

解决方案

在根路径下新建vite配置文件vite.config.js

js 复制代码
import {
	defineConfig
} from "vite"
import uni from "@dcloudio/vite-plugin-uni";
 
export default defineConfig({
	plugins: [
		uni()
	],
	server: {
		proxy: {
			'/api': {
				target: 'http://localhost:3000',
				changeOrigin: true,
				rewrite: path => path.replace(/^\/api/, '')
			},
			
		}
	}
})

重启项目即可使用vite的配置文件进行代理。

相关推荐
2501_916013749 分钟前
App 上架全流程指南,iOS App 上架步骤、App Store 应用发布流程、uni-app 打包上传与审核要点详解
android·ios·小程序·https·uni-app·iphone·webview
0x00014 分钟前
Uniapp - 自定义 Tabbar 实现
前端·uni-app
SY_FC22 分钟前
uniapp发布成 微信小程序 主包内 main.wxss 体积太大
微信小程序·小程序·uni-app
你很易烊千玺1 小时前
即时通讯小程序
小程序·uni-app·直播
风雨兼程^_^2 小时前
ai生成文章,流式传输(uniapp,微信小程序)
ai·微信小程序·uni-app·流式传输
2501_9159184110 小时前
Web 前端可视化开发工具对比 低代码平台、可视化搭建工具、前端可视化编辑器与在线可视化开发环境的实战分析
前端·低代码·ios·小程序·uni-app·编辑器·iphone
2501_9151063211 小时前
iOS 使用记录和能耗监控实战,如何查看电池电量消耗、App 使用时长与性能数据(uni-app 开发调试必备指南)
android·ios·小程序·uni-app·cocoa·iphone·webview
iOS阿玮17 小时前
苹果卡审情况将逐步缓解,合规的开发者请耐心等待~
uni-app·app·apple
2501_9160137420 小时前
HTTPS 抓包难点分析,从端口到工具的实战应对
网络协议·http·ios·小程序·https·uni-app·iphone
2501_915918411 天前
uni-app 项目 iOS 上架效率优化 从工具选择到流程改进的实战经验
android·ios·小程序·uni-app·cocoa·iphone·webview