繁体   English   中英

无法通过 spring-boot 应用程序访问 angular 页面

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM