数据存储Cookie
来源:互联网 发布:化工与人工智能 编辑:程序博客网 时间:2024/06/12 05:10
Cookie
浏览器中的Cookie是一段小型的文本文件,根据不同浏览器对Cookie的实现大概都是在4kb左右。由键值对构成,键值对之间是有分号和空格隔开。
虽然Cookie是在浏览器端储存,但我们一般都在服务器端设置,我们可以在Http返回值里面通过设置Set-Cookie来告诉浏览器我们需要存储的cookie。
属性
想表示一个唯一的cookie,需要Name,Domain,Path的组合。
作用域
当我们设置Path为根目录的时候,设置domain:A,我们访问A时会带上Cookie;设置domain:B,我们访问B时会带上Cookie。当我们设置Domain为父域的时候,我们访问A、B都会带上这个Cookie。
作用路径
在作用域相同的时候,比如我们设置domain:A,我们设置Path:/a,那么在访问A/a时带上Cookie;设置domain:A,我们设置Path:/b,那么在访问A/b时带上Cookie。当我们设置路径为path:/(根目录)时,我们访问子目录都会带有cookie。
读取
我们需要将Cookie转化为JS对象
funciton getCookie(){ var cookie = {}; var all = document.cookie; if(all === '') return cookie; var list = all.split(';'); for(var i = 0;i<list.length;i++){ var item = list[i]; var p = item.indexOf('='); var name = item.substring(0,p); name = decodeURIComponent(name); var value = item.substring(p + 1); value = decodeURIComponent(value); cookie[name] = value; } return cookie;}
设置/修改
我们可以直接使用赋值来修改
document.cookie = 'name = value';
也可以封装一个函数:
function setCookie(name,value,expires,path,domanin,secure){ var cookie = encondeURIComponent(name) + '=' + encodeURIComponent(value); if(expires) cookie += '; expires=' + expires.toGMTString(); if(path) cookie += '; path=' + path; if(domain) cookie += '; domain=' + domain; if(secure) cookie += '; secure' + secure; documrnt.cookie = cookie;}
删除
制定一个cookie的名字,路径,域指定为唯一标识的,然后将max-age设为0即可;
function removeCookie(name,path,domain){ document.cookie = name + '=' + '; path=' + path + '; domain=' + domain + '; max-age=0';}
缺陷
- 流量代价
- 安全性问题,明文传递
- 有大小限制
阅读全文
0 0
- 数据存储Cookie
- cookie怎样存储数据?
- html5存储数据,替代cookie
- Cookie—客户端存储数据技术
- Web前端数据存储—cookie机制
- JavaScript 数据存储之Cookie篇
- cookie到底是怎样存储数据的
- localStorage存储数据,若是IE11以下使用cookie存储
- cookie 存储
- cookie存储
- Cookie存储
- cookie存储
- cookie存储
- 浅析Web数据存储-Cookie、UserData、SessionStorage、WebSqlDatabase
- 浏览器端数据存储之Cookie、localStorage、sessionStorage
- cookie存储数据(使用本地app-debug.aar包)--CookieUtil
- Cookie 存储加密 解密
- cookie 存储限制
- ViewPager+Fragment(二)装修房
- Homebrew不能使用
- 【poj2524】Ubiquitous Religions 【Alberta Collegiate Programming Contest 2003.10.18】
- zstack 串口解读,几家之言汇总。(2)
- .建文件夹
- 数据存储Cookie
- E
- 原生JS获取页面全部的checkbox的方法
- python
- 异步Get解析网络(图片,文字,ListView)
- JavaSE-HttpURLConnection上传文件
- javascriptDOM
- react native执行npm install 报错:code EINTEGRITY,sha1-KBu8wWXlw2tMjqqGjmdoVD6BG8s= integrity checksum fa
- 用UDP协议写简易聊天室