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

相关推荐
毎天要喝八杯水2 小时前
搭建vue前端后端环境
前端·javascript·vue.js
JavaGuide4 小时前
推荐一个基于 Spring Boot 4.0 + Java 21 + Spring AI 2.0 的大模型项目!
java·spring boot·spring
NE_STOP4 小时前
spring6-多种类型的注入方式
spring
小马爱打代码4 小时前
Spring Boot :使用 Spring Cache 注解方式集成 Redis
spring boot·redis·spring
东东5165 小时前
果园预售系统的设计与实现spingboot+vue
前端·javascript·vue.js·spring boot·个人开发
有味道的男人5 小时前
1688获得商品类目调取商品榜单
java·前端·spring
灵感菇_5 小时前
详细解析 MVC/MVP/MVVM/MVI 架构
架构·mvc·mvvm·mvp·mvi
怪兽毕设5 小时前
基于SpringBoot的选课调查系统
java·vue.js·spring boot·后端·node.js·选课调查系统
树码小子5 小时前
SpringMCV(9)响应:返回静态页面 & 修改响应数据
spring·mvc
Amumu121385 小时前
Vue Router(一)
前端·javascript·vue.js