我有角度应用程序(后端有弹簧启动)
这是我的路线:
export const routes: Routes = [
{ path: '', redirectTo: 'intro', pathMatch: 'full' },
{ path: 'home', component: HomeComponent },
// LANGUAGES
{ path: 'english', component: LanguageComponent },
{ path: 'spanish', component: LanguageComponent },
// CITIES
{ path: 'alexandria', component: CityComponent },
{ path: 'ankara', component: CityComponent }];
export const router: ModuleWithProviders = RouterModule.forRoot(routes, { useHash: false, initialNavigation: true });
现在有趣的行为:
当我在应用程序中路由时(=单击具有routerLink的按钮/链接标签)一切正常,但是当我直接将url插入浏览器时,我得到了以下内容:
localhost:8080 / english - > Whitelabel错误页面(默认弹簧启动404页面)。 (适用于任何语言)
localhost:8080 / alexandria - >按预期工作(适用于任何城市)
当我在一个单独的服务器(localhost:4200)上运行前端时,一切都按预期工作。
答案 0 :(得分:0)
您必须配置Spring引导以将所有内容重定向到index.html
。
因为当请求到达您的服务器时,除非您重定向到角度应用程序(index.html
),Angular应用程序才会运行,然后您在Angular中的路由配置不值得。