Я новичок в angular2 и koajs. Может глупый вопрос.
У меня есть приложение angular2 с таблицей маршрутизации, как показано ниже:
const appRoutes: Routes = [
{
path: 'pats/report/settings',
component: PatsReportSettingsComponent
},
{
path: 'pats/report/:id',
component: PatsReportComponent,
pathMatch: 'full'
},
{
path: 'pats/report/login',
component: PatsLoginComponent,
pathMatch: 'full'
},
{
path: '.',
redirectTo: 'pats/report/login',
pathMatch: 'full'
},
{
path: '**',
component: Pats404PageComponent,
pathMatch: 'full'
},
];
Если пользователь получает доступ к нашему приложению через корневой URL-адрес (http://localhost:3000), перейдите на дочернюю страницу (например, : http://localhost:3000/pats/report/settings), все в порядке, начиная с angular2 app будет обрабатывать навигацию по дочерней странице внутренне и не будет отправлять http-запрос к серверной части.
Но если пользователь напрямую обращается к нашему приложению с URL-адресом дочерней страницы, например: http://localhost:3000/pats/report/settings, бэкенд-приложение koajs ответит статусом 404, так как не существует маршрута для пути «pats/report/settings» на бэкенде.
Как правильно решить эту проблему?
Должен ли я добавить маршрут для всех путей к дочерним страницам клиента во внутреннем маршрутизаторе и ответить с помощью index.html?