Я считаю, что это простой вопрос, но я не мог найти ответ или хотя бы использовать правильные термины в поиске.
Я настраиваю Angular2
и Springboot
вместе. По умолчанию Angular
будет использовать пути, такие как localhost:8080\dashboard
и localhost:8080\dashboard\detail
.
Я хотел бы избежать использования пути как хэш, если это возможно. Как Angular документация заявляет:
Функция router обеспечиватьRouter устанавливает свойство LocationStrategy в PathLocationStrategy, что делает его стратегией по умолчанию. Мы можем переключиться на HashLocationStrategy с переопределением во время процесса начальной загрузки, если мы предпочитаем его.
И затем...
Почти все Angular 2 проекта должны использовать стиль HTML по умолчанию. Он создает URL-адреса, которые пользователям легче понять. И он сохраняет возможность выполнения рендеринга на стороне сервера позже.
Проблема в том, что когда я пытаюсь получить доступ к localhost:8080\dashboard
, Spring будет искать некоторое сопоставление контроллера этому пути, которого у него не будет.
Whitelabel Error Page
There was an unexpected error (type=Not Found, status=404).
No message available
Сначала я думал, что все мои службы будут находиться под localhost:8080\api
и все мои статические под localhost:8080\app
. Но как я могу сказать Spring игнорировать запросы к этому пути app
?
Есть ли лучшее решение с Angular2 или Boot?