javascript – 获取JSESSIONID值并在AngularJS中创建Cookie

前端之家收集整理的这篇文章主要介绍了javascript – 获取JSESSIONID值并在AngularJS中创建Cookie前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在AngularJS中使用来自客户端的Web RestFUL API.
  1. app.controller('LoginController',[
  2. '$http','$cookies',function($http,$cookies) {
  3. this.credentials = {};
  4.  
  5. this.http = $http;
  6.  
  7. this.login = function() {
  8. console.log(this.credentials);
  9.  
  10. var authdata = btoa(
  11. this.credentials.username +
  12. ':' +
  13. this.credentials.password
  14. );
  15.  
  16. $http.defaults.headers.common['Authorization'] = 'Basic ' + authdata;
  17.  
  18. console.log($http);
  19.  
  20. var res = $http.post("http://API_NAME/library");
  21.  
  22. res.success(function(data,status,header){
  23. alert('Successfull func');
  24.  
  25. console.log($cookies.get('JSESSIONID'));
  26. });
  27.  
  28. res.error(function(data,headers,config) {
  29. console.log('Error Log');
  30. });
  31. };
  32. },]);

然后,我有这个Http标题响应

  1. Set-Cookie:JSESSIONID=azekazEXAMPLErezrzez; Path=/; HttpOnly

我正在使用ngCookies获取JSESSIONID值,然后在我的浏览器中手动创建它,但我无法访问它.

我已经在StackOverflow中看到了关于此的所有帖子,但它们已被弃用或完全不清楚.

感谢您的关注和帮助.

解决方法

您无法使用JavaScript获取HttpOnly cookie.这就是HttpOnly旗帜的全部目的.

那就是说,你不应该这样做. cookie应该随同任何请求自动发送到同一台服务器.如果您正在处理跨源XHR请求,请将your_XHR_instance.withCredentials设置为true以包含cookie.

猜你在找的JavaScript相关文章