加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何访问AngularJS中的Cookie?

发布时间:2020-12-17 09:25:10 所属栏目:安全 来源:网络整理
导读:什么是AngularJS的方式访问cookie?我已经看到了对cookie的服务和模块的引用,但没有示例。 有没有,还是没有一个AngularJS规范方法? 这个答案已经更新,以反映最新的稳定的angularjs版本。一个重要的注意是$ cookieStore是围绕$ cookies的薄包装。他们几乎
什么是AngularJS的方式访问cookie?我已经看到了对cookie的服务和模块的引用,但没有示例。

有没有,还是没有一个AngularJS规范方法?

这个答案已经更新,以反映最新的稳定的angularjs版本。一个重要的注意是$ cookieStore是围绕$ cookies的薄包装。他们几乎是一样的,因为他们只使用会话cookie。虽然,这回答了原始的问题,还有其他解决方案,你可能希望考虑,如使用localstorage或jquery.cookie插件(这将给你更细粒度的控制和服务器的cookie。当然这样做在angularjs意味着你可能希望将它们包装在服务中,并使用$ scope.apply来通知模型更改的角度(在某些情况下)。

另一个注意,那就是两者之间有一个细微的差别,当拉出数据出取决于你是否使用$ cookie存储值或$ cookieStore。当然,你真的想使用一个或另一个。

除了添加对js文件的引用,你需要注入ngCookies到你的应用程序定义,如:

angular.module('myApp',['ngCookies']);

你应该很好去。

这里是一个功能的最小示例,其中我显示cookieStore是一个薄包裹cookie:

<!DOCTYPE html>
<html ng-app="myApp">
<head>
   <link rel="stylesheet" type="text/css" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
</head>
<body ng-controller="MyController">

  <h3>Cookies</h3>
  <pre>{{usingCookies|json}}</pre>
  <h3>Cookie Store</h3>
  <pre>{{usingCookieStore|json}}</pre>

  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.js"></script>
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular-cookies.js"></script>
  <script>
    angular.module('myApp',['ngCookies']);
    app.controller('MyController',['$scope','$cookies','$cookieStore',function($scope,$cookies,$cookieStore) {
      var someSessionObj = { 'innerObj' : 'somesessioncookievalue'};

    $cookies.dotobject = someSessionObj;
    $scope.usingCookies = { 'cookies.dotobject' : $cookies.dotobject,"cookieStore.get" : $cookieStore.get('dotobject') };

    $cookieStore.put('obj',someSessionObj);
    $scope.usingCookieStore = { "cookieStore.get" : $cookieStore.get('obj'),'cookies.dotobject' : $cookies.obj,};
    }
  </script>

</body>
</html>

步骤是:

> include angular.js> include angular-cookies.js>在您的应用程序模块中注入ngCookies(并确保在ng-app属性中引用该模块)>向控制器添加$ cookies或$ cookieStore参数>使用点(。)运算符将cookie作为成员变量访问 – 要么 – >使用put / get方法访问cookieStore

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读