Der folgende JavaScript-Code funktioniert in Chrome und Safari wie gewünscht; unter Internet Explorer hingegen nur bedingt (unter Firefox gar nicht, aber das ist hier nicht das Thema). Es geht um eine Basic-Authentifizierung am Server, die nicht vom Benutzer,
sondern transparent in einem XMLHttpRequest durchgeführt wird.
var xhr = new XMLHttpRequest();
xhr.open('GET', 'api/GetSettings', false, encodeURIComponent('nutzer1'), encodeURIComponent('pass123'));
xhr.send(null);
Dieser Code funktioniert im Internet Explorer nur so lange einwandfrei, wie das Nutzername/Passwort keine Sonderzeichen enthalten. Sind Sonderzeichen (z.B.
pass&%$ als Passwort) enthalten, funktioniert es nicht.
Ich bin mir nicht sicher, ob das was ich da tue von irgendeinem Standard (ECMA/HTTP/XHR) gedeckt ist - aber vielleicht hat ja jemand eine Idee, wie ich das ganze standardkonform - bzw. IE-kompatibel, das reicht mir auch schon - hinbekomme?