2017-08-04 33 views
0

出URL下面是我的情况:角4春天启动路由使用哈希码

  1. 我使用Spring的引导与角4
  2. 我生成使用角CLI和下资源将构建文件 - - 静态文件夹。
  3. 运行一段时间我的pom.xml所有的静态文件夹下的目标复制 - >项目文件夹 - > WEB-INF - >类 - >静态文件夹(预计)

塞纳里奥:

我的网址是

https://localhost:9443/consumer https://localhost:9443/consumer/preapproval https://localhost:9443/consumer/preapproval/申请人 https://localhost:9443/consumer/preapproval/客户

每次点击整个/整个URL不会被改变。如果我使用以下配置:

`@Configuration 公共类WebConfig延伸WebMvcConfigurerAdapter {

@Override 
public void addResourceHandlers(ResourceHandlerRegistry registry) { 
    registry.addResourceHandler("/**").addResourceLocations("classpath:/static/"); 
} 

@Override 
public void addViewControllers(ViewControllerRegistry registry) { 
    registry.addViewController("/").setViewName("forward:/index.html"); 
} 

@Bean 
public InternalResourceViewResolver defaultViewResolver() { 
    return new InternalResourceViewResolver(); 
} 

}`

在弹簧引导,当我刷新/进入比(https://localhost:9443/consumer)以外的任何URL它抛出404错误。任何人都可以告诉我最好的解决方案。

注:在我的生意,我们不应该在角4

在此先感谢

+0

'我们不应该在角4.'使用哈希码是指什么问题可以请您使用HTTPS解释清楚 –

+0

://本地主机:9443 /消费者/#/ - 我们可以利用这一点,但管理层建议我们不要使用'#'。 –

+0

这就是我尝试从服务器端找到其他解决方案的原因,比如Spring引导或者其他来自Angular 4的解决方案,而不使用'#'。希望你可以清楚, –

回答

0

使用散列码我设置getMapping喜欢在我的项目波纹管。

@GetMapping("/{path:[^\\.]*}") 
String redirect() { 
    return "forward:/"; 
}