Fügen Sie die HTTP-basic-Authentifizierung für das HTTP-GET-in angularjs
Ich habe eine vorhandene angularjs-code, die eine HTTP GET. Extrahiert unten einige relevante code im controller.
.controller('imptViewCtrl', ['$scope', '$http',
function ($scope, $http, ) {
var url = $configuration.webroot + '/impt/list?list=testlist';
$http.get(url).then(function (response) {
tableData = response.data;
});
}]);
Hinzufügen möchte ich, dass HTTP basic authentication " der HTTP-GET. Der Benutzername ist foo
und das Passwort ist bar
. Wie kann das getan werden?
Vielleicht könnte dies helfen: stackoverflow.com/questions/18877715/... ?
InformationsquelleAutor user781486 | 2015-12-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da in basic-Authentifizierung, der Benutzername und das Passwort Dekodieren von base64. Sie brauchen, um eine Bibliothek zu dieser Arbeit erst gemütlich.
https://github.com/ninjatronic/angular-base64
Danach laden
base64
in Ihre app und config Header.Können Sie auch die Authentifizierung header
get
Funktion getrennt, wenn Sie mögen.Dein code funktioniert. Ich denke, es ist mein server, was das problem ist. Markierte als richtige Antwort.
Warum benötigen Sie eine Bibliothek zu tun base64? warum nicht btoa() w3schools.com/jsref/met_win_btoa.asp ?
InformationsquelleAutor user5698801
Anstatt eine Bibliothek zum Kodieren der auth von base-64, Sie könnten einfach verwenden:
window.btoa("user:pass")
es ist von den meisten Browsern unterstützt.
https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/btoa
die Art und Weise der Authentifizierung einer Anfrage hängt nicht davon ab, das HTTP-verb der Anfrage. Wenn die Ziel-Endpunkt muss die Standardauthentifizierung, die Sie gerade anwenden, header, ob es eine POST, PUT, etc.
InformationsquelleAutor ryan.wise