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

相关推荐
哆啦A梦15881 小时前
Vue3魔法手册 作者 张天禹 06_监控
前端·vue.js·typescript
无心水1 小时前
5、微服务快速启航:基于Pig与BladeX构建高可用分布式系统实战
服务器·分布式·后端·spring·微服务·云原生·架构
求知摆渡2 小时前
Spring AI 多模型对话 Demo 实战:OpenAI/Ollama 一套接口、Redis 会话记忆、SSE 流式输出、AOP 日志打点
java·spring
扶苏10023 小时前
详解Vue3的自定义 Hooks
前端·javascript·vue.js
hrhcode5 小时前
【Netty】三.ChannelPipeline与ChannelHandler责任链深度解析
java·后端·spring·springboot·netty
css趣多多7 小时前
Vue 响应式无限递归问题总结
前端·javascript·vue.js
014-code7 小时前
Vue3 性能优化实战
前端·vue.js·性能优化
css趣多多9 小时前
vue2项目改造为vue3遇到的问题以及解决办法
前端·vue.js·elementui
哆啦A梦15889 小时前
Vue3魔法手册 作者 张天禹 09_props的使用
前端·vue.js·typescript
MX_93599 小时前
@Import整合第三方框架原理
java·开发语言·后端·spring