CORS Anfrage mit Preflight und Redirect: nicht erlaubt. Problemumgehungen?

Ich entwerfe eine API, mit der sich der Benutzer authentifizieren kann (mithilfe von Token) und die Weiterleitungen innerhalb derselben Domäne enthält. Bei einer nicht authentifizierten Anforderung an einen Endpunkt, der 303 zurückgibt, wird

GET /documents/123  --> 303 redirect to `/documents/abc`
GET /documents/abc  --> 200

alles funktioniert gut.

Lassen Sie uns eine authentifizierte Anfrage an denselben Endpunkt senden, an dem dasAuthorization Header wird gesendet. Dies macht die Anfrage zu einempreflighted request und der Browser führt einen Preflight durchOPTIONS request, d. h.

OPTIONS /documents/123   --> 204 (everything okay, please proceed)
GET /documents/123       --> 303 redirect to `/documents/abc`

n diesem Punkt anstelle vonGETting die tatsächliche Ressource bei/documents/abc, der Browser liefert

XMLHttpRequest cannot load http://localhost:8000/people/username/nschloe. 
The request was redirected to 'http://localhost:8000/people/YDHa-B2FhMie', 
which is disallowed for cross-origin requests that require preflight.

Dieses Verhalten stimmt mit @ übereDer Standar:

7.1.5 Ursprungsübergreifende Anforderung mit Preflight

Wenn die Antwort einen HTTP-Statuscode hat, der nicht im Bereich 2xx liegt

enden Sie die Netzwerkfehlerschritte a

Dies scheint zu bedeuten, dass mankann nich führt Umleitungen für authentifizierte Ressourcen durch, auch wenn sich die Umleitung in derselben Domäne befindet localhost).

Kann das wirklich wahr sein? Gibt es eine gemeinsame Problemumgehung?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage