当前位置: 首页 > news >正文

vue3+vite+ts配置多个代理并解决报404问题

之前配置接口代理总是报404,明明接口地址是对的但还是报是因数写法不对;用了vue2中的写法

pathRewrite改为rewrite

根路径下创建env文件根据自己需要名命

.env.development文件内容

# just a flag
ENV='development'# static前缀
VITE_APP_PUBLIC_PREFIX=""
# 基础模块
VITE_APP_BASIC_PREFIX='/basicSetting'
# 任务模块
VITE_APP_TASK_PREFIX='/task'# 网关
VITE_APP_GATEWAY_PREFIX='/gateway/admin'
# 主题
VITE_APP_THEME=light# vue-cli uses the VITE_CLI_BABEL_TRANSPILE_MODULES environment variable,
# to control whether the babel-plugin-dynamic-import-node plugin is enabled.
# It only does one thing by converting all import() to require().
# This configuration can significantly increase the speed of hot updates,
# when you have a large number of pages.
# Detail:  https://github.com/vuejs/vue-cli/blob/dev/packages/@vue/babel-preset-app/index.js
VITE_CLI_BABEL_TRANSPILE_MODULES=true

在vite.config.ts中配置poxy代理

import proxyConfig from './proxy'
const viteConfig = defineConfig(({ mode }) => {return {server: {host: '0.0.0.0', //解决“vite use `--host` to expose”port: 8080,open: true,proxy: proxyConfig}}
})
export default viteConfig

创建proxy.ts文件

import { ProxyOptions } from 'vite'import { loadEnv } from 'vite'const env = loadEnv('development', process.cwd())const proxies: Record<string, ProxyOptions> = {// 任务模块[env.VITE_APP_TASK_PREFIX as string]: {target: 'http://xxx:31249', // 目标地址 --> 服务器地址changeOrigin: true, // 允许跨域rewrite: (path) => path.replace(new RegExp(`^${env.VITE_APP_TASK_PREFIX}`), '')},[env.VITE_APP_GATEWAY_PREFIX as string]: {target: 'http://192.168.8.xx:8080', // 目标地址 --> 服务器地址changeOrigin: true, // 允许跨域rewrite: (path) => path.replace(new RegExp(`^${env.VITE_APP_GATEWAY_PREFIX}`), '')}// 添加其他代理配置
}export default proxies

api.ts接口使用

import request from '@/request/request'
import settings from '@/settings'
export function getTaskList(data: any): Res<any> {return request({url: settings.taskPrefix + '/adm/detectionTasks/page',method: 'post',data})
}

其中的settings.ts文件可以不用封装直接写你的env就行;也可以像我一样封装

export default {/*** 任务模块*/taskPrefix: import.meta.env.VITE_APP_TASK_PREFIX,/***  网关服务文件前缀*/gatewayPrefix: import.meta.env.VITE_APP_GATEWAY_PREFIX
}

页面中调用接口

import { getTaskList } from '@/api'const param = {entity: {},betweenCondition: {},page: {page: 1,pageSize: 10}}getTaskList(param).then((res) => {console.log(res)}).catch((err) => {console.log(err)})

效果:

相关文章:

vue3+vite+ts配置多个代理并解决报404问题

之前配置接口代理总是报404,明明接口地址是对的但还是报是因数写法不对;用了vue2中的写法 pathRewrite改为rewrite 根路径下创建env文件根据自己需要名命 .env.development文件内容 # just a flag ENVdevelopment# static前缀 VITE_APP_PUBLIC_PREFIX"" # 基础模块…...

开创未来:探索OpenAI首个AI视频模型Sora的前沿技术与影响

Sora - 探索AI视频模型的无限可能 随着人工智能技术的飞速发展&#xff0c;AI视频模型已成为科技领域的新热点。而在这个浪潮中&#xff0c;OpenAI推出的首个AI视频模型Sora&#xff0c;以其卓越的性能和前瞻性的技术&#xff0c;引领着AI视频领域的创新发展。让我们将一起探讨…...

Redis---持久化

Redis是内存数据库&#xff0c;是把数据存储在内存中的&#xff0c;但是内存中的数据不是持久的&#xff0c;如果想要做到持久&#xff0c;那么就需要让redis将数据存储到硬盘上。 Redis持久化有两种策略&#xff1a; RDB > Redis DataBase RDB机制采取的是定期备份AOF …...

从 Flask 切到 FastAPI 后,起飞了!

我这几天上手体验 FastAPI&#xff0c;感受到这个框架易用和方便。之前也使用过 Python 中的 Django 和 Flask 作为项目的框架。Django 说实话上手也方便&#xff0c;但是学习起来有点重量级框架的感觉&#xff0c;FastAPI 带给我的直观体验还是很轻便的&#xff0c;本文就会着…...

状态码转文字!!!(表格数字转文字)

1、应用场景&#xff1a;在我们的数据库表中经常会有status这个字段&#xff0c;这个字段经常表示此类商品的状态&#xff0c;例如&#xff1a;0->删除&#xff0c;1->上架&#xff0c;0->下架&#xff0c;等等。 2、我们返回给前端数据时&#xff0c;如果在页面显示0…...

Pytorch 复习总结 4

Pytorch 复习总结&#xff0c;仅供笔者使用&#xff0c;参考教材&#xff1a; 《动手学深度学习》Stanford University: Practical Machine Learning 本文主要内容为&#xff1a;Pytorch 深度学习计算。 本文先介绍了深度学习中自定义层和块的方法&#xff0c;然后介绍了一些…...

YOLOv9中加入SCConv模块!

专栏介绍&#xff1a;YOLOv9改进系列 | 包含深度学习最新创新&#xff0c;主力高效涨点&#xff01;&#xff01;&#xff01; 一、本文介绍 本文将一步步演示如何在YOLOv9中添加 / 替换新模块&#xff0c;寻找模型上的创新&#xff01; 适用检测目标&#xff1a; YOLOv9模块…...

代码随想录算法训练营第四十七天丨198. 打家劫舍、​ 213. 打家劫舍 II​、337. 打家劫舍 III

198. 打家劫舍 自己的思路&#xff1a; 初始化两个dp数组&#xff0c;dp[i][0]表示不偷第i户&#xff0c;在0-i户可以偷到的最大金额&#xff0c;dp[i][1]表示偷i户在0-i户可以偷到的最大金额。 class Solution:def rob(self, nums: List[int]) -> int:n len(nums)dp […...

龙蜥Anolis 8.4 anck 安装mysql5.7

el8没有用mysql5.7了&#xff0c;镜像里是mysql8。 禁用 sudo dnf remove mysql sudo dnf module reset mysql sudo dnf module disable mysql 修改Yum源 sudo vi /etc/yum.repos.d/mysql-community.repo [mysql57-community] nameMySQL 5.7 Community Server baseurlhttp:…...

【踩坑】修复xrdp无法关闭Authentication Required验证窗口

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 问题如下&#xff0c;时不时出现&#xff0c;有时还怎么都关不掉&#xff0c;很烦&#xff1a; 解决方法一&#xff1a;命令行输入 dbus-send --typemethod_call --destorg.gnome.Shell /org/gnome/Shell org.gn…...

python学习笔记 - 标准库常量

Python 中有一些内置的常量&#xff0c;它们是一些特殊的值&#xff0c;通常不会改变。以下是其中一些常见的内置常量及其详细解释以及使用示例&#xff1a; True&#xff1a; 表示布尔值真。给 True 赋值是非法的并会引发 SyntaxError。 x True print(x) # 输出&#xff1a…...

视频和音频使用ffmpeg进行合并和分离(MP4)

1.下载ffmpeg 官网地址&#xff1a;https://ffmpeg.org/download.html 2.配置环境变量 此电脑右键点击 属性 - 高级系统配置 -高级 -环境变量 - 系统变量 path 新增 文件的bin路径 3.验证配置成功 ffmpeg -version 返回版本信息说明配置成功4.执行合并 ffmpeg -i 武家坡20…...

02| JVM堆中垃圾回收的大致过程

如果一直在创建对象&#xff0c;堆中年轻代中Eden区会逐渐放满&#xff0c;如果Eden放满&#xff0c;会触发minor GC回收&#xff0c;创建对象的时GC Roots&#xff0c;如果存在于里面的对象&#xff0c;则被视为非垃圾对象&#xff0c;不会被此次gc回收&#xff0c;就会被移入…...

R语言数据可视化之美专业图表绘制指南(增强版):第1章 R语言编程与绘图基础

第1章 R语言编程与绘图基础 目录 第1章 R语言编程与绘图基础前言1.1 学术图表的基本概念1.1.1 学术图表的基本作用1.1.2基本类别1.1.3 学术图表的绘制原则 1.2 你为什么要选择R1.3 安装 前言 这是我第一次在博客里展示学习中国作者的教材的笔记。我选择这本书的依据是作者同时…...

网站添加pwa操作和配置manifest.json后,没有效果排查问题

pwa技术官网&#xff1a;https://web.dev/learn/pwa 应用清单manifest.json文件字段说明&#xff1a;https://web.dev/articles/add-manifest?hlzh-cn Web App Manifest&#xff1a;Web App Manifest | MDN 当网站添加了manifest.json文件后&#xff0c;也引入到html中了&a…...

MongoDB聚合运算符:$cosh

文章目录 语法使用举例双曲余弦值角度双曲余弦值弧度 $cosh聚合运算符用来计算双曲余弦值&#xff0c;返回指定表达式的双曲余弦值。 语法 { $cosh: <expression> }<expression>为可被解析为数值的表达式$cosh返回弧度&#xff0c;使用$radiansToDegrees运算符可…...

Jenkins配置在远程服务器上执行shell脚本(两种方式)

Jenkins配置在远程服务器上执行shell脚本 方式一&#xff1a;通过SSH免密方式执行 说明&#xff1a;Jenkins部署在ServerA&#xff1a;10.1.1.74上&#xff0c;要运行的程序在ServerB&#xff1a;10.1.1.196 分两步 第一步&#xff1a;Linux Centos7配置SSH免密登录 Linux…...

Java+SpringBoot,打造社区疫情信息新生态

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…...

js ES6判断字符串是否以某个字符串开头或者结尾startsWith、endsWith

1.前言 startsWith&#xff1a;startsWith方法用于检查字符串是否以指定的字符串开头。 endsWith&#xff1a;endsWith方法用于检查字符串是否以指定的字符串结尾。 2.用法示例 const str Hello, world!;console.log(str.startsWith(Hello)); // true console.log(str.starts…...

预研项目完成后小批量验证(技术变更流程)

...

跨越虚拟壁垒:在VMware Fusion中成功导入Parallels Desktop macOS虚拟机实战

1. 为什么需要跨虚拟机平台迁移macOS系统 最近在折腾Mac上的虚拟机时&#xff0c;遇到了一个很有意思的问题。本来想在VMware Fusion里直接安装macOS系统&#xff0c;结果试了好几次都蓝屏失败。这让我想起之前用Parallels Desktop&#xff08;以下简称PD&#xff09;安装macOS…...

Navicat重置脚本终极指南:3种简单方法无限恢复试用期

Navicat重置脚本终极指南&#xff1a;3种简单方法无限恢复试用期 【免费下载链接】navicat_reset_mac navicat mac版无限重置试用期脚本 Navicat Mac Version Unlimited Trial Reset Script 项目地址: https://gitcode.com/gh_mirrors/na/navicat_reset_mac 你是否正在寻…...

Redis怎样向Lua脚本传递动态参数

Redis Lua脚本通过KEYS和ARGV接收参数&#xff1a;KEYS存显式声明的key名&#xff0c;ARGV存动态值参数&#xff1b;必须用ARGV传递所有非key参数&#xff0c;避免拼接注入&#xff0c;并注意字符串类型转换与空值处理。Redis Lua脚本里怎么接收外部传进来的参数Redis 执行 EVA…...

手把手教你用Arduino和PulseSensor做个心率监测仪(附Processing上位机调试技巧)

从零打造Arduino心率监测仪&#xff1a;硬件搭建与数据处理全指南 在创客圈里&#xff0c;健康监测设备一直是热门DIY项目。相比市面上动辄上千元的专业医疗设备&#xff0c;用Arduino和PulseSensor自制心率监测仪不仅成本低廉&#xff08;整套材料不到200元&#xff09;&#…...

前端工程化进阶:从开发到部署的全流程优化

前端工程化进阶&#xff1a;从开发到部署的全流程优化 一、引言&#xff1a;别再把前端工程化当配置活儿 "前端工程化不就是配置一下webpack吗&#xff1f;"——我相信这是很多前端开发者常说的话。 但事实是&#xff1a; 好的工程化可以提升开发效率50%以上规范的工…...

CFCA精品可可设计师中级认证课程掌控:驾驭奶糖变量,构筑绝对可控的配方结构边界

在行业验证中&#xff0c;我反复观察到一个堪称“通病”的现象&#xff1a;许多人做黑巧还能勉强及格&#xff0c;可一旦涉足牛奶巧克力或特调风味&#xff0c;往往全线崩溃 。面对翻车&#xff0c;大多数人会轻易归咎于“奶太难伺候”或“糖不好控制” 。但我必须指出更深层的…...

Java的java.util.random.RandomGeneratorFactory随机数生成器工厂选择

Java中的随机数生成器工厂选择指南 在现代软件开发中&#xff0c;高质量的随机数生成对密码学、模拟测试和游戏开发等领域至关重要。Java在JDK 17中引入了java.util.random.RandomGeneratorFactory&#xff0c;为开发者提供了更灵活、高效的随机数生成器选择机制。本文将围绕该…...

RabbitMQ 重复消费解决方案:幂等性保障全攻略(原理+流程图+实战代码)

RabbitMQ 重复消费解决方案&#xff1a;幂等性保障全攻略&#xff08;原理流程图实战代码&#xff09;前言一、为什么会出现消息重复消费&#xff1f;&#xff08;核心原因&#xff09;1.1 根本原因1.2 3 大常见场景1.3 重复消费流程图二、核心解决方案&#xff1a;实现消费端*…...

EarthSDK(Vue3+Vite)实战:构建跨引擎数字孪生地球应用的架构设计与核心模块解析

1. EarthSDK与数字孪生地球应用开发全景视角 第一次接触EarthSDK时&#xff0c;我正为一个智慧城市项目焦头烂额。客户要求在三个月内实现同时支持Cesium和Unreal引擎的孪生城市平台&#xff0c;传统开发方式需要维护两套代码&#xff0c;直到发现EarthSDK这个"中间件&quo…...

深入电源与时钟:打造一块稳定可靠的STM32F103C8T6 PCB,LDO、去耦、晶振布局全解析

深入电源与时钟&#xff1a;打造稳定可靠的STM32F103C8T6 PCB设计实战指南 在嵌入式硬件开发中&#xff0c;一块看似简单的STM32开发板背后隐藏着无数工程智慧。当项目从实验室Demo走向量产环境时&#xff0c;电源噪声导致的随机复位、时钟抖动引发的通信失败、布局不当引起的…...