在 Spring MVC 中部署路由为history模式的vue项目

为了处理 Vue.js 的 History 模式,需要在 Spring MVC 中配置一个控制器来转发所有的非 API 请求到 index.html。这样,前端路由可以接管 URL 并正确显示 Vue.js 组件。

创建一个控制器(例如 ForwardingController)来处理所有的前端路由:

java 复制代码
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class ForwardingController {

    @GetMapping("/**/{path:[^\\.]*}")
    public String forward() {
        // 将所有匹配的请求转发到 /index.html
        return "forward:/index.html";
    }
}

在这个控制器中,/**/{path:[^\.]*} 是一个路径匹配模式,它匹配所有的路径(不包含点 ., 因为点通常用于文件扩展名)。这确保了 Vue.js 的 History 模式可以正确处理路由。

相关推荐
chxii27 分钟前
mybatis-spring 浅析
java·spring·mybatis
Lsx_43 分钟前
🔍 React 有 useAntdTable,Vue3 怎么办?自封一个 useTable!
前端·javascript·vue.js
码途进化论1 小时前
Vue3 + Vite 系统中 SVG 图标和 Element Plus 图标的整合实战
前端·javascript·vue.js
爱分享的鱼鱼1 小时前
Vue.js 中实现局部彩条ConfettiEffect动效:采用canvas-confetti库
vue.js·canvas
没有bug.的程序员2 小时前
JVM 内存模型(JMM):并发的物理基础
java·jvm·spring boot·spring·jmm
一个尚在学习的计算机小白2 小时前
springcache缓存
java·spring·缓存
爱吃香蕉的阿豪2 小时前
.NET 10正式发布:三年LTS加持,性能与AI开发双重革命
前端·javascript·vue.js
我的div丢了肿么办3 小时前
js中async和await 的详细讲解
前端·javascript·vue.js
种时光的人4 小时前
关于人人开源框架renren-fast-vue前端npm install安装报错的问题解决方法
前端·vue.js·npm
GoFly开发者5 小时前
使用AES加解密在vue3前端加密、Golang后端解密实战教程(后端框架可以为Gin、Goframe等框架使用)
vue.js·aes加密vue·aes解密go