angularjs - AngularJs 应用程序在 Spring 启动中提供服务。页面刷新时 Spring 容器返回 404
问题描述
我有一个 Spring Boot 应用程序,它在其中提供 AngularJS 应用程序。当我尝试使用按钮、链接等进行导航时,一切正常。但是当尝试用 F5 刷新页面时,Spring 容器返回 404。对此有什么线索吗?下面是启动应用程序的 Web 配置。
@Configuration
public class UIWebConfig implements WebMvcConfigurer
{
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addViewController("/").setViewName("forward:/index.html");
registry.addViewController("/admin").setViewName("forward:/admin/index.html");
}
@Override
public void configurePathMatch(PathMatchConfigurer configurer) {
configurer.setUseSuffixPatternMatch(false);
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry)
{
registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
}
}
解决方案
对不起,不能发表评论,所以我必须在这里发帖:(
会不会是这行代码??
registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
我相信你错过了一个'。在 /static/ 目录之前,以便 IDE 知道您正在使用相对(相对于您的计算机)目录。
试试这样:
registry.addResourceHandler("/**").addResourceLocations("classpath:./static/");
对不起,如果我错了!有的话我就删了 只是想帮忙:)
推荐阅读
- user-interface - HiveMQ 中 Web UI 的 SSL/TLS
- docker - Hadoop namenode 无法识别 docker 中的数据节点
- laravel - Vagrant Share - Laravel Homestead,Ubuntu
- android-studio - Android Studio 没有按属性对齐我的代码
- java - Jooq Loggerlistener 查询执行时间不一致
- azure-cosmosdb - 在 ARM 模板中获取 CosmosDb 主连接字符串
- windows-10 - Windows 10 上的“bash:fork:重试:资源暂时不可用”错误
- jenkins - 如何让通用 Webhook 触发器插件与 Jenkins 中的多分支管道一起使用?
- javascript - 在 Javascript 中转换 UTC 日期的替代方法?
- c# - 如何在 C# 中展平嵌套元组?