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的配置文件进行代理。

相关推荐
anyup8 分钟前
🔥🔥 uView Pro:Vue3+TS重构的uni-app开源组件库,文档免费无广告!
前端·vue.js·uni-app
样子201811 小时前
Uniapp 之renderjs解决swiper+多个video卡顿问题
前端·javascript·css·uni-app·html
fakaifa13 小时前
点大餐饮独立版系统源码v1.0.3+uniapp前端+搭建教程
小程序·uni-app·php·源码下载·点大餐饮·扫码点单
Bug改不动了16 小时前
React Native 与 UniApp 对比
react native·react.js·uni-app
anyup18 小时前
🔥🔥 10 天 Star 破百!uView Pro 文档也开源啦:完全免费、无广告、高效上手
前端·vue.js·uni-app
fakaifa1 天前
【最新版】CRMEB Pro版v3.4系统源码全开源+PC端+uniapp前端+搭建教程
人工智能·小程序·uni-app·php·crmeb·源码下载·crmebpro
2501_915918411 天前
iOS 应用上架全流程实践,从开发内测到正式发布的多工具组合方案
android·ios·小程序·https·uni-app·iphone·webview
梦里寻码2 天前
自行食用 uniapp 多端 手写签名组件
前端·uni-app
不如摸鱼去3 天前
Trae 辅助下的 uni-app 跨端小程序工程化开发实践分享
微信小程序·小程序·uni-app·aigc·ai编程
小白_ysf3 天前
uniapp 开发微信小程序,获取经纬度并且转化详细地址(单独封装版本)
微信小程序·uni-app