2016-09-30 2 views
0

У меня есть Rails 5 API с угловым 2 передним концом.Подавать приложение Angular2 не на корень

Как настроить приложение Angular2 не для запуска на «/», а вместо этого загрузить его «/ app»?

BaseURL устарел, а base href не действует. Я читал много страниц инструкций, но большинство из них устарело или просто не работает.

+0

Является ли ваш Rails API также выполняющим маршрутизацию? – gelliott181

+0

@ gelliott181 Да. У меня определена область API: «scope»/api «do ....», и все мои ресурсы находятся в этой области. Угловое приложение обращается к API по этому пути. –

+0

Угловой маршрутизатор не будет направлять запросы должным образом, если ваш первый маршрутизатор сбрасывает все запросы в '/ app' как 404s. – gelliott181

ответ

0

Основываясь на вашем комментарии, я предполагаю, что запросы проходят через сервер, прежде чем попасть в ваше приложение Angular 2.

request -> server -> route -> api 
request -> server -> route -> app -> route 

Исходя из этого, вам потребуется сервер для маршрутизации /app к вашему угловому приложению, а затем установить базовую HREF для /app.

Это основано на том, что я сделал, чтобы вернуть задний конец HapiJS, чтобы правильно обслуживать мои угловые 2 маршрута.

+0

OK Я понял одну вещь. У меня была проблема с конфигурацией прокси. Теперь я могу заставить приложение работать в «/ app», но что происходит, если вы приземлитесь на «/», приложение углового приложения загрузится и перенаправляет вас в «/ app». Поэтому я думаю, что это больше вопрос рельсов. Как мне получить рельсы для обработки «/» самостоятельно, вместо того, чтобы передавать запрос в приложение «Угловое»? –

+0

Это не в моих силах, поскольку у меня нет опыта Rails. Я предполагаю, что вам просто нужно настроить '/', чтобы явным образом обрабатывать сервер Rails вместо отправки в '/ app'. – gelliott181

Смежные вопросы