JavaScript-Weiterleitungs-URL mit Autorisierungsheader

8

Ich habe erfolgreich eine URL hinter einem Verzeichnis in Apache, das mit Basic Authentication (htpasswd, etc.) geschützt ist, aufgerufen. Die Ajax-GET-Anforderung funktioniert normal und gibt den geschützten Inhalt zurück:

%Vor%

Meine ursprüngliche Annahme war, dass die Web-Sitzung, nachdem sie eine Anfrage erfolgreich autorisiert hat, die Umleitung im Block 'success' ermöglicht, ohne die Benutzeranmeldeinformationen anzufordern . Wenn dieser Codeblock aufgerufen wird, hat der Benutzer Benutzername und Kennwort in einer nicht geschützten Umgebung eingegeben. Wenn die Umleitung jedoch aufgerufen wird, öffnet der Browser das Login / Passwort-Fenster.

Irgendwelche Vorschläge, wie ich eine Sitzung mit der Basisautorisierung vorautorisieren könnte, die von den Benutzern bereitgestellt wurde?

    
hcabral 18.02.2015, 16:54
quelle

1 Antwort

1

Die Protokollierung mit AJAX-Anforderung funktioniert normalerweise, weil eine erfolgreiche AJAX-Anforderung Sitzungscookies festlegt, die bei allen nachfolgenden Anforderungen transparent gesendet werden.

Vielleicht sind Ihre Cookies gesetzt, aber aus irgendeinem Grund nicht transparent gesetzt: Sie können mit xhr.getAllResponseHeaders () / xhr.getResponseHeader () überprüfen und danach mit document.cookie.

setzen

Wenn keine Sitzungscookies vorhanden sind, schlägt dieses Verhalten normalerweise fehl.

Sie können versuchen, mit dem Benutzernamen + Passwort in der URL umleiten (nicht empfohlen, weil Benutzername + Passwort wird wahrscheinlich in der Browser-Adresse URL-Leiste nachher sichtbar sein):

%Vor%

Auch sollten Sie testen, um die Umleitung zu verzögern ... weil es vielleicht funktioniert, aber Sie müssen etwas Zeit für den Browser geben, haben Sie versucht:

%Vor%     
user1039663 09.11.2017 13:11
quelle