cookie

来源:互联网 发布:夜神模拟器清理数据 编辑:程序博客网 时间:2024/06/06 01:41

铺垫:

  1. 引入http模块,建立一个服务。
  2. 引入url模块,解析浏览器请求路径。
  3. 引入queryString模块,解析查询字符串(在这里用来解析cookie);
  4. 解析cookie也可以用qs,qs是第三方模块(可以解析多层数据:{name:’yan’,city:{xxx : ‘xxx’}})
    http.createServer((req,res)=>{       let {pathname} = url.parse(req.url,true);}).listen(3000)

在响应头中设置cookie:

res.setHeader('setCookie','name=yan');
  1. 属性之间用分号空格隔开。
  2. setCookie / Set-Cookie( 二取一);

从请求头中获取cookie:

let cookie = req.headers.cookie;

用querystring将cookie解析成对象,用querystring解析cookie字符串的时候;注意cookie的分隔符(是分号空格而不是&)。

let cookieObj=querystring(cookie,'; ');

属性

  1. key=value:保存要传输的信息。
  2. Domain:域名。指定域名(向指定域名发请求时带cookie,有指定域名后,向其他域名发请求不带cookie),默认为当前域名。
  3. maxAge:相对过期时间。
  4. Exrires:绝对过期时间。
  5. secure:值为true时,http请求中是无效的,在HTTps中才有效。
  6. path:表示cookie影响到的路径。当浏览器匹配不到路径时,不发送cookie。
  7. httpOnly:设置了httpOnly属性,通过js不能获取cookie的信息。

express中设置cookie


  • res.cookie(name,value,{options}):express提供的方法。
  • 安装、引入cookie-parser中间件。

$ npm install cookie-parser –save
app.use(require(‘cookie-parser’)()); //使用中间件
request.cookies

cookie使用注意事项

  • 可能被客户端篡改,使用前验证合法性
  • 不要存储敏感数据,比如用户密码,账户余额
  • 使用httpOnly保证安全
  • 尽量减少cookie的体积
  • 设置正确的domain和path,减少数据传输
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 痛风引起的脚肿怎么办 老人腰闪了该怎么办 腰闪了站不起来怎么办 又怕冷又爱上火怎么办 肝上多发小囊肿怎么办 5岁宝宝咳嗽厉害怎么办 5岁宝宝咳嗽有痰怎么办 生川乌外贴中毒怎么办 7个月宝宝流鼻涕怎么办 脸上皮肤毛孔粗大有黑头怎么办 嗓子长了个囊肿怎么办 食管胃粘膜异位怎么办 狗狗肿瘤破了怎么办 婴儿胃食道反流怎么办 小儿胃食道反流怎么办 放疗后咳嗽痰多怎么办 胃息肉是恶性的怎么办 老是胃疼,胃胀怎么办 吃完饭之后胃胀怎么办 胃痛胃胀怎么办能缓解 胃胀不消化怎么办快速解决 便秘肛裂了好痛怎么办 胃消化慢还便秘怎么办 11个月婴儿便秘怎么办 80多岁老人便秘怎么办 狗狗便秘拉不出来怎么办 2个月幼犬便秘怎么办 狗狗便秘怎么办吃什么 痔疮又痛又痒怎么办 痔疮肉球特别痒怎么办 长了个小痔疮怎么办 产后4天没大便怎么办 7个月孕妇痔疮怎么办 运动完恶心想吐怎么办 跑步后恶心想吐怎么办 肠子不蠕动严重便秘怎么办 怀孕八个月严重便秘怎么办 怀孕七个月便秘严重怎么办 怀孕两个月便秘严重怎么办 3岁宝宝上火便秘怎么办 7个月的宝宝贫血怎么办