Ich entwickle gerade eine Web-Anwendung mit Angular2 mit TypeScript (wenn das wichtig ist).
Diese Anwendung muss mit einem Webserver kommunizieren, der nach einer Digest-Authentifizierung fragt.
Bis jetzt habe ich die native Login-Eingabeaufforderung des Browsers verwendet, die automatisch angezeigt wird, wenn der Server eine "401 nicht autorisierte" zurückgibt. Der Browser fragt nur einmal nach Authentifizierung und verwendet diesen Benutzernamen und das Passwort automatisch für zukünftige Anfragen. Ich muss also nicht auf die Authentifizierung achten, der Browser tut alles für mich.
Leider muss ich jetzt einen benutzerdefinierten Login-Bildschirm erstellen, da ich einige Standardaktionen wie "register" oder "reset passwort" implementieren muss, auf die normalerweise von diesem Bildschirm aus zugegriffen werden kann.
Da Digest-Authentifizierung ziemlich komplex ist und der Browser bereits all die komplexen Dinge für mich tun würde, würde ich gerne die Browser-Funktionalität weiter verwenden, aber ohne seine Login-Eingabeaufforderung zu verwenden.
So ist es möglich, die Browser-Authentifizierungsfunktion zu verwenden?
Wenn es möglich ist, wie kann ich den Benutzernamen und das Passwort festlegen, das es verwenden soll?Javascript mit nativer Browser-Authentifizierung
EDIT:
Als jemand diese Frage als „zu breit“ schließen wollte, ich werde versuchen, etwas mehr Details hinzuzufügen.
Die Web-Anwendung erhält Daten von einem erholsamen Webservice. Dieser Webservice erfordert Digestauthentifizierung und antwortet mit einem 401, wenn Sie einen falschen Benutzernamen oder ein falsches Passwort verwenden.
Wie oben erwähnt, zeigt der Browser automatisch eine Anmeldeaufforderung an, wenn er einen Fehler 401 erhält. Wenn Sie eine gültige Anmeldung eingeben, speichert der Browser diese Werte irgendwo zwischen und speichert sie automatisch für jede zukünftige Anfrage.
Jetzt möchte ich grundsätzlich die Login-Eingabeaufforderung ersetzen und programmatisch die Werte festlegen, die der Browser für die Anmeldung verwenden soll.
Ich hoffe, dies hilft, um die Frage klar zu machen.
Also, was ist das Login, das Sie verwenden? HTAccess? – epascarello
Derzeit verwende ich die native Login-Eingabeaufforderung des Browsers. – Springrbua
Und wo wird die Anmeldung gehen, um zu überprüfen, ob der Benutzer gültig ist? – epascarello