cookie设置
- key-value格式
- 在响应中设置
- cookie是否随request发送:
- 适配的路径下,有效期内,session会发送所有的cookie。
firefox,可在F12开发状态下查看,会看到在请求报文中,包含了已有的cookie;在响应报文中,有服务器对cookie的设定。
nodejs中cookie的用法
1)app use cookie
var cookieParser = require('cookie-parser');
app.use(cookieParser());
2)设定
var cookieConfig={maxAge: 1000*60*60*24*30,httpOnly: true,path:'/cookie'};
res.cookie("uname",UUID.v1(),cookieConfig);
3)获取
var a= req.cookies.uname;
session
- 生成:建立连接后,会话里没有session信息,服务器创建session,并返回sessionid,保存在客户端cookie;
- 生命周期:每次请求,都发送cookie中的sessionid,服务器据此验证会话。
- 失效:超时;服务器重启;
解释:
1)为什么登陆后,关闭浏览器,可以直接访问?
&:session没有失效(失效的条件都没有触发:1、超过20mi;2、cookie失效)
sessionid存在cookie中,且有效,浏览器重启后,仍然随请求发到server,session也活在server中,故直接登陆。