Cookie & Session

1. 关于Cookie

 

Cookie是一种客服端技术,用来在客户端保存数据。客服端同时可以可以保存多个cookie。一个cookie包含

name、value、expires、path、domain五个部分。一个cookie的ID由name、path、domain组成,即当name、path、domain相同时两个cookie是同一个cookie.

 

在客户端,通过js可以操作cookie。

写一个cookie(注意,只写一个cookie,不影响其他cookie)方式是

document.cookie = "name=value; expires=; path=/path/; domain=";

读所有cookie(注意,一次读出所有cookie)的方式是

var cookies  = document.cookie

返回的结果是string,形式为 name1=value1; name2=value2。因为expires、path、domain不可读,所有不显示。

 

在客服端根据cookie的expires时间将cookie保存在不同的地方

当expires存在时那么将cookie保存在磁盘上。当expires不存在时,那么就是用默认值。默认值时,cookie的有效期是浏览器进程的生命周期,这个时候将cookie保存在进程的数据空间。

 

当客户端向server发送请求时,客服端会将domain, path相匹配的cookie发送给server,在sever端可以访问这些cookie。

 

2. 关于Session

Session是一种在server端保存数据的技术。每个session有一个session id。session需要使用cookie,来在客服端保存session id。

这个cookie的name是JSESSIONID、expires是默认值、path是当前web app的context path。

在客户端你可以通过JS对这个cookie进行操作。例如浏览器不关闭,强行让当前Session失效

expireDate = new Date();

expireDate.setYear(expireDate.getYear() -1);

document.cookie = "JSESSIONID=;expires=" + expireDate.toGMTString() + ";path=<%=request.getContextPath()%>";

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值