在 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 模式可以正确处理路由。

相关推荐
毕设源码-钟学长8 小时前
【开题答辩全过程】以 基于Vue的租房App为例,包含答辩的问题和答案
前端·javascript·vue.js
树码小子10 小时前
统一功能处理(1)拦截器
spring·拦截器
wuhen_n11 小时前
副作用的概念与effect基础:Vue3响应式系统的核心
前端·javascript·vue.js
张3蜂11 小时前
Vue.js-知识体系
前端·javascript·vue.js
wuhen_n12 小时前
effect函数的完整实现与追踪:深入Vue3响应式核心
前端·javascript·vue.js
滕青山12 小时前
HTML编码/解码 核心JS实现
前端·javascript·vue.js
zihan032112 小时前
若依(RuoYi)框架升级适配 JDK 21 和 SpringBoot 3.5.10
java·spring boot·spring·若依·若依升级jdk21
RunsenLIu12 小时前
智慧房屋租赁管理系统
前端·javascript·vue.js
phltxy13 小时前
快速上手 ElementPlus:核心用法精讲
前端·javascript·vue.js