2017-02-04 1 views
1

Я пытаюсь создать новый интерфейс поверх существующего приложения GAE с использованием React, Redux и Redux-Router. Моя проблема заключается в том, как сделать GAE всегда резервным на страницу html, где Redux-Router позаботится о маршрутизации.GAE web.xml для резервного копирования на React-Router

Прямо сейчас, если я перехожу к '/', приложение работает отлично, и навигация идеальна. Когда я обновляю страницу, GAE запускается и пытается найти маршрут.

Как настроить GAE, чтобы всегда идти один и тот же html? о, только если URL-адрес не начинается с api/для обслуживания моих данных?

Спасибо за помощь

+0

Следует упомянуть, что бэкэнд - это Java. – sleeveroller

ответ

1

web.xml (в 2,5 раза) позволяет символы подстановки в начало или конец пути (но не где-нибудь в середине)

Вы должны добиться того, что вы после того, как с помощью /* - который является в основном любым путем, не отображаемым другим правилом. Правило /api/* должно продолжать работать.

+0

Это, похоже, сделало трюк! Спасибо – sleeveroller

+0

По какой-то причине он работает нормально локально, но при развертывании в GAE он терпит неудачу со странной ошибкой: java.lang.IllegalStateException: сервлета принудительного пути для /index.html – sleeveroller

+0

Вы пытаетесь загрузить index.html в браузере ? Вы можете сопоставить это как статический ресурс в appengine-web.xml – Nick

0

Предполагая, что вы используете Python в интерфейсе следующий будет делать трюк в вашем main.py - где IndexHandler является обработчик используется для визуализации «HTML-страницы, где Redux-маршрутизатор будет принимать уход за маршрутизацией ».

app = webapp2.WSGIApplication([ 
    ('/.*', IndexHandler)], 
    config=config, 
    debug=DEBUG) 
+0

Бэкэнд - это Java, к сожалению ... – sleeveroller

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