Ich authentifiziere Benutzer von meiner eckigen js Webanwendung mit den Autorisierungsheadern, indem ich das jwt token übergebe.Ich habe festgestellt, dass Auth-interceptor nur die HTTP-Anfragen von dieser Seite abfängt. Nun nehme an, dass mysite.com/page Authentifizierung erfordert Der Benutzer gibt es manuell in eine andere Registerkarte ein. Wie kann ich überprüfen, ob er authentifiziert ist? Ich habe festgestellt, dass keine Header durch die Anfrage geleitet werden und der Benutzer "Nicht angemeldet" gefunden wird, obwohl er auf der anderen Registerkarte angemeldet ist .Wie können Benutzer authentifiziert werden, die die URL im Browser mithilfe der Token-basierten Authentifizierung manuell eingeben?
Antwort
Wo speichern Sie derzeit den JWT-Token zwischen jeder Anfrage? Sie könnten es in localStorage speichern.
Dann können Sie in der Funktion run() Ihres Auth-Moduls überprüfen, ob ein JWT-Token im lokalen Speicher verfügbar ist. Wenn ja, können Sie es verwenden.
Lokaler Speicher ist für alle Fenster derselben Domäne verfügbar. Wenn der Benutzer Ihre Site in einem anderen Fenster öffnet, wird das jwt-Token im lokalen Speicher gefunden.
okay, wie kann ich finden, ob Benutzer einen lokalen Speicher von der Server-Seite hat. Können Sie mir bitte eine Referenz zeigen. Dies ist das erste Mal, dass ich Token – radha
verwenden Sie tun dies nicht von Server-Seite. Sie speichern das Token in Ihrem lokalen Speicher. 1. Sie authentifizieren sich für den Server 2. Server sendet Ihnen ein JWT-Token 3. Sie speichern es im lokalen Speicher. Da es im lokalen Speicher ist, ist es über Windows verfügbar 4. auf jede Anfrage, die Sie dieses Token hinzufügen – Melou
kann ich einige Referenz in Bezug auf diese – radha
Verwenden Sie '$ http', um eine Anfrage zu stellen und die Authentifizierung zu überprüfen. – charlietfl