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

相关推荐
Vegetable_xu12 分钟前
Spring Bean 循环依赖:为什么有时能过、有时启动就挂
java·spring·mybatis
Java后端的Ai之路2 小时前
前端技术Vue-13-安装webpack与vuejs
前端·vue.js·webpack
倚窗听花_2 小时前
IIS部署前端Vue项目
前端·javascript·vue.js
u0111026753 小时前
Vue 3 统一右侧编辑面板:布局、滚动与底部操作区设计
javascript·vue.js·ecmascript
change_fate3 小时前
Vue 3 Composable 函数指南
前端·javascript·vue.js
tryCbest3 小时前
Vue3——第 9 篇:组件通信全攻略(下)——Provide / Inject 与事件总线
前端·javascript·vue.js
开开心心_Every4 小时前
免费压缩软件WinRAR无弹窗、广告干扰
java·开发语言·前端·spring·智能手机·word·winrar
YDS8294 小时前
Small Spring IOC篇:应用上下文实现和Bean的扩展
java·后端·spring
溪语流沙5 小时前
【Web全栈进阶】Nginx反向代理 + HTTPS:正式上线
前端·vue.js·python·nginx·https·fastapi
萧瑟余晖5 小时前
Spring Cloud分布式事务与链路追踪详解
分布式·spring·spring cloud