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

相关推荐
IKUN家族9 小时前
Spring IoC&DI
java·spring·rpc
山荷枝10 小时前
03-框架--Spring
java·后端·spring
Sterting10 小时前
第9课 Vue Router 路由
前端·vue.js
满栀58512 小时前
vue动态路由效果
前端·javascript·vue.js·前端框架·vue
9523612 小时前
Spring-cloud配置中心
java·spring·spring cloud·微服务
心运软件13 小时前
SpringBoot+ Vue校园社团管理平台的完整架构设计
vue.js·后端
真上帝的左手13 小时前
10. 软件设计&架构-Spring Security 7 整合CAS SSO 单点登录
java·spring·架构·sso
jjw_zyfx14 小时前
css vue vite实现闪烁的呼吸效果
javascript·css·vue.js
浅水壁虎15 小时前
vue基础(第四章 Pinia)
前端·javascript·vue.js
学习星球16 小时前
Vue 3 实战:拆解 RealWorld 项目
前端·vue.js