AngularJs Cookies 操作
2015-12-05 10:20
651 查看
$cookiesProvider
使用$cookiesProvider改变$cookies服务的默认行为。
默认属性
path:字符串,cookies只在这个路径及其子路径可用。默认情况下,这个将会是出现在你基础标签上的网址路径。
domain:字符串,cookies只在这个域及其子域可用。为了安全问题,如果当前域不是需求域的或者其子域,那么用户代理不会接受cookies。
expires:字符串,日期。"Wdy, DD Mon YYYY HH:MM:SS GMT"格式的字符串或者一个日期对象表示cookies将在这个确切日期/时间过期。
secure:boolean,该cookies将只在安全连接中被提供。
$cookiesProvider 配置
$cookies
提供浏览器cookies的读/写访问操作。
支持1.4及以上版本。
需要引入ngCookies模块。angular.cookies[.min].js
方法:
get(key);
根据key返回该cookies值。
key:搜索cookies的id。
getObject(key);
根据key返回该cookies的反序列化值。
key:搜索cookies的id。
getAll();
返回所有cookies的键值对格式对象。
put(key,value,[options]);
根据给定的id设置一个cookies。
key:cookies值的id。
value:要存储的cookies原始值。
[options]:选项对象。
putObject(key,value,[options]);
根据给定的id设置一个cookies。
key:cookies值的id。
value:要存储的cookies原始值。
[options]:选项对象。
remove(key,[options]);
移除指定id的cookies。
key:要删除的键值cookies对的id。
[options]:选项对象。
$cookieStore
提供一个被session cookies支持的键值对(字符串-对象)存储。被存入和取出的对象将自动通过angular的toJson/fromJson进行序列化/反序列化。
依赖:$cookies
方法:
get(key);
根据key返回cookies值(已被反序列化)。
key:搜索cookies的id。
put(key,value);
根据给定的id设置一个cookies。
key:cookies值的id。
value:要存储的cookies值。
remove(key);
移除指定id的cookies。
key:要删除的键值cookies对的id。
使用代码:
注意 : angular 使用 cookies 需要引入angular-cookies[.min].js
使用 cookies 需谨慎,多注意路径(path)和域(domain)的坑就基本没什么问题了
使用$cookiesProvider改变$cookies服务的默认行为。
默认属性
path:字符串,cookies只在这个路径及其子路径可用。默认情况下,这个将会是出现在你基础标签上的网址路径。
domain:字符串,cookies只在这个域及其子域可用。为了安全问题,如果当前域不是需求域的或者其子域,那么用户代理不会接受cookies。
expires:字符串,日期。"Wdy, DD Mon YYYY HH:MM:SS GMT"格式的字符串或者一个日期对象表示cookies将在这个确切日期/时间过期。
secure:boolean,该cookies将只在安全连接中被提供。
$cookiesProvider 配置
(function () { angular.module('Demo', []) .config(["$cookiesProvider",cookiesFn ]) function cookiesFn($cookiesProvider) { $cookiesProvider.defaults = { path: yourPath, domain: yourDomain, expires: expireDate, secure: true/false }; } }());
$cookies
提供浏览器cookies的读/写访问操作。
支持1.4及以上版本。
需要引入ngCookies模块。angular.cookies[.min].js
方法:
get(key);
根据key返回该cookies值。
key:搜索cookies的id。
getObject(key);
根据key返回该cookies的反序列化值。
key:搜索cookies的id。
getAll();
返回所有cookies的键值对格式对象。
put(key,value,[options]);
根据给定的id设置一个cookies。
key:cookies值的id。
value:要存储的cookies原始值。
[options]:选项对象。
putObject(key,value,[options]);
根据给定的id设置一个cookies。
key:cookies值的id。
value:要存储的cookies原始值。
[options]:选项对象。
remove(key,[options]);
移除指定id的cookies。
key:要删除的键值cookies对的id。
[options]:选项对象。
$cookieStore
提供一个被session cookies支持的键值对(字符串-对象)存储。被存入和取出的对象将自动通过angular的toJson/fromJson进行序列化/反序列化。
依赖:$cookies
方法:
get(key);
根据key返回cookies值(已被反序列化)。
key:搜索cookies的id。
put(key,value);
根据给定的id设置一个cookies。
key:cookies值的id。
value:要存储的cookies值。
remove(key);
移除指定id的cookies。
key:要删除的键值cookies对的id。
使用代码:
(function () { angular.module('Demo', ["ngCookies"]) .controller('testCtrl', ["$cookies","$cookieStore","$timeout",testCtrl]); function testCtrl($cookies,$cookieStore,$timeout) { var time = new Date().getTime()+5000; $cookies.put("theCookie","Hello World",{expires:new Date(new Date().getTime()+5000)}); $cookies.putObject("objCookie",{value:"Hello World"},{expires:new Date(new Date().getTime()+5000)}); $cookieStore.put("newCookie",{value:"Hello World"}); var getCookie = $cookies.get("theCookie"); // Hello World var getObjCookie = $cookies.getObject("objCookie"); // Object{ value="Hello World" } var getNewCookie = $cookieStore.get("newCookie"); // Hello World //$cookies.remove("theCookie"); // theCookie = unfefined //$cookies.remove("objCookie"); // objCookie = undefined var allCookies = $cookies.getAll(); // Object{ theCookie="Hello World", objCookie="{"value":"Hello World"}", newCookie="{"value":"Hello World"}" } $timeout(function(){ var _getCookie = $cookies.get("theCookie"); // theCookie = unfefined var _getObjCookie = $cookies.getObject("objCookie"); // objCookie = undefined $cookieStore.remove("newCookie"); // newCookie = undefined },6000); } }());
注意 : angular 使用 cookies 需要引入angular-cookies[.min].js
使用 cookies 需谨慎,多注意路径(path)和域(domain)的坑就基本没什么问题了
相关文章推荐
- 如何利用AngularJS打造一款简单Web应用
- 分享使用AngularJS创建应用的5个框架
- AngularJs初接触
- AngularJS教程(一)
- AngularJS的增删改查、state嵌套案例,不涉及服务端
- Angularjs ng-repeat 中对元素的validate处理错误问题
- $locationChangeStart ,$locationChangeSuccess,$routeChangeStart,$routeChangeSuccess如何使用
- ECharts 初识(基于MVC+jQuery+Angularjs实现的Demo)
- angular中compile和link的区别
- AngularJs的那些坑(持续更新...)
- (笔记)angular 的hover事件
- AngularJs页面传参的几种方式
- Angularjs 如何在 post 请求时去掉因 ng-repeat 产生的 $$hashkey?
- angular input 默认值
- AngularJS中Provider、Service和Factory之间的不同
- AngularJS与RequireJS集成方案
- Day 2: AngularJS —— 对AngularJS的初步认识
- 学习 AngularJS (一)
- angular之ngCloak
- angular学习