Wie Kriege ich ein Bearer-Token von einem Authorization-Header in Javascript(Angular2/4)?
In javascript habe ich eine Methode, die authentifiziert zu meinem server über eine http-post-Anfrage erfolgreich.
Die response-Daten von meinem server ist das senden einer JWT in einem Authorization-header wie folgt:
Authorization: Bearer mytoken12345abc
Kann ich abrufen der authorization-header erfolgreich von meinem Server response-Daten wie zum Beispiel so:
let authheader = response.headers.get('Authorization');
Aber wie kann ich Parsen? Ist "Träger" einen Schlüssel? so etwas wie:
let token = authheader.Bearer
was natürlich nicht korrekt ist ... kann mir jemand Hilfe?
in anderen Worten, ist die folgende die beste Vorgehensweise?
let token = response.headers.get('Authorization');
let parsedToken = token.slice(7);
- arbeiten Sie in eckige ?
- Ja Winkel 2 / 4
- backend nodejs ?
- Das Backend wird von Apache / PHP
Du musst angemeldet sein, um einen Kommentar abzugeben.
Laut jwt.io-Doku,
Daher mit der JWT ist der in der Authorization-header verwendet werden soll, indem der client, nicht der server für die erste Reaktion.
Dem richtigen Weg ist, um das token als Teil der Antwort Körper. Wir verwenden eine
Art System für, die.
Dann können Sie leicht Zugang über Ihr
response.json()
.Können Sie den Zugriff auf die header-Wert direkt mit
response.headers.get(...)
aber dann haben Siesplit
,substr
oder regex-match, um die tatsächliche token.Wenn man token vom server in die Speicherung der browser-Sitzung/local wie unten
Immer, wenn Sie rufen Sie die Dienste-server Berechtigungs-token im header, es ist eine sichere Art und Weise, wie unten