[英]Can't access angular pages through spring-boot application
我想构建在资源/静态/文件夹中包含角度文件的 spring-boot 应用程序。
我已经构建了角度文件并将它们放入静态目录中。
并且登录页面工作正常(我认为是因为重定向),成功登录用户后应该在主页上重定向但我得到 404 错误,我认为我的 angular app.routing 文件中存在问题,我尝试了几种映射变体,例如/main-page
甚至http://localhost:8080/main-page
,但它仍然无法正常工作。 任何想法我该怎么办?
app-routing.module.ts file
{ path: '', redirectTo: '/login', pathMatch: 'full', canActivate: [AuthGuard]},
{ path: 'cars/add', component: CarEditorComponent},
{ path: 'login', component: LoginComponent},
{ path: 'main-page', component: WelcomeComponent},
{ path: 'stocks', component: StockDashboardComponent},
因此,据我所知,会发生这种情况,因为当我们向localhost:8080/main-page
发送请求时,它尝试在静态文件夹中找到资源/main-page
,但我们只有静态的 index.html。 为了解决这个问题,我们应该添加下一个配置。
@Configuration
public class MvcConfig implements WebMvcConfigurer {
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addViewController("/ui/**").setViewName("/");
}
}
此外,我们应该更改我们的app-routing.module.ts file
{ path: 'ui/cars/add', component: CarEditorComponent},
{ path: 'ui/login', component: LoginComponent},
{ path: 'ui/main-page', component: WelcomeComponent},
{ path: 'ui/stocks', component: StockDashboardComponent},
现在,当我们发送任何匹配/ui/**
模式的请求时,我们将被重定向到 index.html(由 angular 生成)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.