Używam interfejsu Web RestFUL API od mojego klienta w AngularJS.Uzyskaj wartość JSESSIONID i utwórz ciasteczko w AngularJS
app.controller('LoginController', [
'$http',
'$cookies',
function($http, $cookies) {
this.credentials = {};
this.http = $http;
this.login = function() {
console.log(this.credentials);
var authdata = btoa(
this.credentials.username +
':' +
this.credentials.password
);
$http.defaults.headers.common['Authorization'] = 'Basic ' + authdata;
console.log($http);
var res = $http.post("http://API_NAME/library");
res.success(function(data, status, header){
alert('Successfull func');
console.log($cookies.get('JSESSIONID'));
});
res.error(function(data, status, headers, config) {
console.log('Error Log');
});
};
},
]);
Potem mam to nagłówki HTTP Reagowanie
Set-Cookie:JSESSIONID=azekazEXAMPLErezrzez; Path=/; HttpOnly
używam ngCookies uzyskać wartość JSESSIONID a następnie utworzyć go ręcznie w przeglądarce, ale nie mogę go otworzyć.
Widziałem już wszystkie posty na ten temat w StackOverflow, ale są one przestarzałe lub całkowicie niejasne.
Dzięki za zainteresowanie i pomoc.
Dlaczego potrzebujesz dostępu do JSESSIONID w Angular? Ten plik cookie jest oznaczony jako HttpOnly, tzn. Nie można uzyskać do niego dostępu w JS. –
Nie udało mi się automatycznie odczytać wysyłania pliku cookie JSESSIONID. Myślałem, że muszę to zrobić ręcznie. Komentarze pomogły mi to zrozumieć. Rozwiązywanie problemów –