首页 > 解决方案 > 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/");
  }
}

标签: angularjsspringspring-boot

解决方案


对不起,不能发表评论,所以我必须在这里发帖:(

会不会是这行代码??

registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");

我相信你错过了一个'。在 /static/ 目录之前,以便 IDE 知道您正在使用相对(相对于您的计算机)目录。

试试这样:

registry.addResourceHandler("/**").addResourceLocations("classpath:./static/");

对不起,如果我错了!有的话我就删了 只是想帮忙:)


推荐阅读