2017-02-04 1 views
1

Ich versuche, ein neues Frontend auf einer vorhandenen GAE-Anwendung mit React, Redux und Redux-Router zu bauen. Mein Problem ist herauszufinden, wie GAE immer Fallback auf die HTML-Seite, wo Redux-Router kümmert sich um das Routing.GAE web.xml zu Fallback zu React-Router

Gerade jetzt, wenn ich nach '/' gehe, funktioniert die App gut und die Navigation ist perfekt. Wenn ich die Seite aktualisiere, tritt GAE ein und versucht, die Route zu finden.

Wie konfiguriere ich GAE, um immer das gleiche HTML zu gehen? oh, nur wenn die url nicht mit api/um meine daten zu bedienen?

Danke für die Hilfe

+0

Sollte erwähnt haben, dass das Backend Java ist. – sleeveroller

Antwort

1

web.xml (unter 2.5) ermöglicht es Ihnen, den Beginn oder das Ende des Wegs zum Platzhalter (aber nicht überall in der Mitte)

sollten Sie erreichen, was Sie sind nach /* durch die Verwendung - Dies ist im Grunde jeder Pfad, der nicht von einer anderen Regel zugeordnet wird. Ihre /api/* Regel sollte weiterhin funktionieren.

+0

Das schien den Trick geschafft zu haben! Danke – sleeveroller

+0

Aus irgendeinem Grund funktioniert es gut lokal, aber bei der Bereitstellung auf GAE schlägt es mit einem seltsamen Fehler: java.lang.IllegalStateException: Kein erzwungenes Pfad-Servlet für /index.html – sleeveroller

+0

Versuchen Sie, Index.html im Browser zu laden ? Sie können dies als eine statische Ressource in appengine-web.xml – Nick

0

Angenommen, Sie die folgenden im Backend Python verwenden würde in Ihrem den Trick main.py - wo IndexHandler ist der Handler verwenden Sie die „HTML-Seite zu machen, wo Redux-Router nehmen Sorge für das Routing ".

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

Das Backend ist leider Java ... – sleeveroller

Verwandte Themen