Ich habe einige lokale html/js-Dateien, mit denen ich einige Remote-Server über https aufrufen und schließlich Basic-Authentifizierung für die Anfrage verwenden möchte.Basis-Authentifizierung mit jQuery.ajax Anfrage und Jsonp
Ich stoße auf zwei Probleme. Erste ist, dass, wenn ich nicht angeben ‚JSONP‘ für den Datentyp, jQuery.ajax() Anforderung gibt den Fehler:
Access to restricted URI denied code: 1012
Sind meine Anfragen Cross-Domain in Betracht gezogen, weil meine Hauptarbeitsdatei lokal gespeichert ist, aber Daten von einem Server woanders abrufen?
So gut, ich den Anruf zu aktualisieren, so dass es nun wie folgt aussieht:
$.ajax({
url: myServerUrl,
type: "GET",
dataType: "jsonp", // considered a cross domain Ajax request if not specified
username: myUsername,
password: myPassword,
success: function(result)
{
// success handling
},
error: function(req, status, errThrown){
// error handling
}
})
Weil ich die Standardauthentifizierung verwenden müssen, ich bin in der Benutzername/Passwort vorbei, aber wenn ich überwachen die Anfrage, ich don Es wird nicht gesetzt und zusätzlich sendet der Server eine Fehlerantwort, da er nicht die erwarteten Informationen hat.
Zusätzlich, da ich jsonp
eingestellt habe, wird beforeSend
nicht aufgerufen.
Wie gebe ich die Anmeldeinformationen mithilfe der Standardauthentifizierung für diese Anforderung weiter?
Dies ist die richtige Antwort, JSONP kann die USER/PWD-Header nicht enthalten, die Basic Auth erfordert. Also du bist verdammt, wenn du es tust und verdammt, wenn du es nicht tust :) –