Loading... ## 问题来源 ![](https://www.bdmcom.cn/usr/uploads/2022/10/3650253445.png) ### history模式: ![](https://www.bdmcom.cn/usr/uploads/2022/10/2268525815.png) ### hash模式: ![](https://www.bdmcom.cn/usr/uploads/2022/10/1703840476.png) vue默认的路径模式为:hash,**只要是#后面的路径都不会发送网络请求** 唯一的缺点路径中带有`#`不美观, 但是如果我们使用history模式,刷新页面后端会发送网络请求**导致404**,于是有了下面的问题解决 ## 问题解决: 启动类上加上如下代码: ```java @Bean public WebServerFactoryCustomizer<ConfigurableWebServerFactory> webServerFactoryCustomizer() { //第二种写法:java8 lambda写法 return (factory -> { ErrorPage errorPage404 = new ErrorPage(HttpStatus.NOT_FOUND, "/index.html"); factory.addErrorPages(errorPage404); }); } ``` 或者新建一个配置类: ```java import org.springframework.boot.web.server.ConfigurableWebServerFactory; import org.springframework.boot.web.server.ErrorPage; import org.springframework.boot.web.server.WebServerFactoryCustomizer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpStatus; @Configuration public class ServletConfig { @Bean public WebServerFactoryCustomizer<ConfigurableWebServerFactory> webServerFactoryCustomizer() { return (factory -> { ErrorPage errorPage404 = new ErrorPage(HttpStatus.NOT_FOUND, "/index.html"); factory.addErrorPages(errorPage404); }); } } ``` 最后修改:2022 年 10 月 14 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 1 如果文章有用,请随意打赏。