Im Rennspiel 2.4.6Warum ist die Strecke eine POST und sich in einen GET im Play 2.4.6
Ich habe folgendes in meine Routen-Datei unter Umgehung:
POST /register controllers.Auth.saveRegistration()
Das Problem:
Ich habe ein Formular, das einen POST zu/registrieren mit einer Nutzlast macht, das funktioniert lokal & on Staging gut. In der Produktion wird jedoch eine nachfolgende GET-Anforderung generiert.
Ich log alle Routen und Aktionsmethoden an meine Logger durch Überschreibung Global :: onRouteRequest & & Global :: onRequest
Produktionsprotokolle:
[info] application - [AUTH] Create::personalInfo() accessed for session
[info] application - [ROUTE] /register POST
[info] application - [ROUTE] actionMethod.name = saveRegistration()
[info] application - [ROUTE] /register GET
Staging Logs:
[info] application - [AUTH] Create::personalInfo() accessed for session
[info] application - [ROUTE] /register POST
[info] application - [ROUTE] actionMethod.name = saveRegistration()
[info] application - [AUTH] Call Auth::saveRegistration
[info] application - [AUTH] Person::createOrUpdate creating new user
[info] application - [AUTH] Calling Auth::saveRegistration::AuthActions::loginPerson()
[info] application - [AUTH] Auth::saveRegistration::redirect to /myfavoriteroute
Zusätzlicher Context
Wenn die saveRegistrationMethod()
genannt wird, wenn das es dann dann das erste, was ausgeführt sollte sollte Schreib Call Auth::saveRegistration
sein Das bedeutet saveRegistrationMethod()
ist nie in der Produktion genannt, und das erzeugt eine GET Anfrage stattdessen.
auch: Der Browser zeigt eine Antwortcode von 303 - Antwort hier angebracht
HTTP/1.1 303 See Other
Server: Cowboy
Connection: keep-alive
Vary: Accept-Encoding
Location: https://www.----.com/register
Content-Length: 20
Content-Encoding: gzip
Content-Language: en-US
Access-Control-Allow-Origin: *
Date: Mon, 01 Aug 2016 18:18:51 GMT
Via: 1.1 vegur
auch: Gebaut mit SBT_CLEAN = True auf Heroku - in Build-Protokollen überprüft ..
Frage:
Was würde dazu führen, dass ein POST ein GET generiert und was diese Umweltabweichungen verursachen könnte?
Ich habe den ursprünglichen Beitrag aktualisiert, um die Pastebin-URL der rohen 303-Antwort zu enthalten - ich sehe keine Filter im Zusammenhang mit dieser Geschäftslogik - ich sehe nur Filter zum Anhängen von CORS und ExcludingCSRF über EssentialFilter. –
Ich habe eine TransactionalAction gefunden, die die Auth-Klasse schmückt, die weiter unten im Stack verwendet wird. Es enthielt eine Umleitung für die Verarbeitung von http vs HTTPS-Verkehr. Wenn es umgeleitet wurde, hat es POST-Anfragen nicht richtig behandelt. –