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

相关推荐
不会吃萝卜的兔子15 小时前
spring - 微服务授权 2 实战
spring·oauth2·authorization
Jooou17 小时前
Spring事务实现原理深度解析:从源码到架构全面剖析
java·spring·架构·事务
gelald18 小时前
Spring Security 核心组件
后端·spring
老前端的功夫19 小时前
Vue2中key的深度解析:Diff算法的性能优化之道
前端·javascript·vue.js·算法·性能优化
han_19 小时前
前端高频面试题之Vue(高级篇)
前端·vue.js·面试
daidaidaiyu20 小时前
Spring BeanPostProcessor接口
java·spring
脸大是真的好~21 小时前
黑马JAVAWeb -Vue工程化-API风格 - 组合式API
前端·javascript·vue.js
你挚爱的强哥21 小时前
【sgMobileUploadTypeSelect】自定义组件:从底部弹出选择上传图片文件的方式【1、上传本地文件,2、拍摄上传】
前端·javascript·vue.js
LXA080921 小时前
Vue 3中使用JSX
前端·javascript·vue.js
执携21 小时前
Vue Router (历史模式)
前端·javascript·vue.js