cookie会话跟踪技术

概念

在一次会话从开始到结束的整个过程,全程跟踪记录客户端的状态(例如:是否登录、购物车信息、是否已下载、是否 已点赞、视频播放进度等等)

cookie的组成

cookie 由名/值对形式的文本组成:name=value。完整格式为:
name=value;[expires=date];[path=path];[domain=somewhere.com];[secure],
中括号是可选,name=value 是必选。

设置cookie
document.cookie = 符合cookie格式的字符串。

读取cookie
alert(document.cookie); 直接读取

编码与解码
为了保证在存储cookie和读取cookie的过程中,防止中文乱码,一般情况下,将中文编码存储,读取的时候再解码读取。
document.cookie=‘user=‘ +encodeURIComponent(‘xxx’); //编码写入
alert(decodeURIComponent(document.cookie)); //解码读取

浏览器上查看cookie
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cookie属性

1.失效时间 — expires
expires=date
失效时间,如果没有声明,则为浏览器关闭后即失效。声明了失效时间, 那么时间到期后方能失效。
var date=newDate(); //创建一个
date.setDate(date.getDate() +7);
document.cookie=“user= “+ encodeURIComponent(‘xxx’)+";expires=" +date;

PS:可以通过 Firefox 浏览器查看和验证失效时间。如果要提前删除 cookie 也非常简单, 只要重新创建 cookie 把时间设置当前时间之前即可:date.getDate() -1 或 newDate(0)。

2.path限制访问路径
path=path 限制访问路径,当设置了路径,那么只有设置的那个路径文件才可以访问 cookie。

var path=’/E:/%E5%A4%87%E8%AF%BE%E7%AC%94%E8%AE%B0/JS1/29/demo’;
document.cookie=“user= “+ encodeURIComponent(‘xxx’)+ “;path=”+path;

PS:为了操作方便,我直接把路径复制下来,并且增加了一个目录以强调效果。

3.domain限制
domain=domain 访问域名,用于限制只有设置的域名才可以访问,那么没有设置,会 默认限制为创建 cookie 的域名。
var domain =‘baidu.com’;
document.cookie="user= "+ encodeURIComponent(‘xxx’)+ “;domain=”+domain;
PS:如果定义了 baidu.com ,那么在这个域名下的任何网页都可访问.必须访问域名和设置cookie的域名一致,否则cookie设置失败。

4.secure安全设置
secure 安全设置,指明必须通过安全的通信通道来传输(HTTPS)才能获取 cookie。
document.cookie="user= "+ encodeURIComponent(‘xxx’)+ “;secure”;
PS:https 安全通信链接需要单独配置。

封装

JavaScript 设置、读取和删除并不是特别的直观方便,我们可以封装成函数来方便调用。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值