前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Cookie的特点和使用经验/建议总结

Cookie的特点和使用经验/建议总结

作者头像
KenTalk
发布2018-09-11 11:43:28
9820
发布2018-09-11 11:43:28
举报
文章被收录于专栏:Ken的杂谈Ken的杂谈
一、前言
  • 什么是Cookie?

Cookie就是以Key,Value的形式存储在浏览器端的数据。 https://baike.baidu.com/item/cookie/1119

二、工作原理&应用场景
  • 工作原理

在Request的时候,浏览器将Cookie信息放在HTTP-Request Headers中。 在Response的时候,浏览器保存HTTP-Response Headers信息中的Cookie信息。

Cookie的核心信息包含三个部分:Name、Value、过期时间。 Cookie的保存是覆盖式的,所以Cookie的添加、更新、删除对于浏览器来说都是执行设置(set)的动作。

  • 应用场景
  1. 记住用户名
  2. 购物车信息
三、特点

1、存储特点

  • (1)存储大小受限,跟浏览器版本有关
  • (2)存储条数受限,跟浏览器版本有关
  • (3)字符编码为Unicode,不支持直接存储中文
  • (4)存储内容可以被轻松查看,不建议存储敏感信息
  • (5)可靠性差,可能随时都会因为各种原因被删除
  • (6)存储属性除了Name、Value、过期时间,还有Domian、Path,当前域可以操作当前域子域、父域名的Cookie,当前Path,可以操作当前Path以及当前Path子、父Path下的Cookie。

domian:www.ken.io 是ken.io的子域,是test.www.ken.io的父域,同时也是blog.ken.io的同级域名。www.ken.io下的应用可以访问ken.io以及*.www.ken.io下的Cookie,但是不能访问blog.ken.io下的Cookie path:例如页面:http://ken.io/home/about 路径是/home/about,这个路径下可以访问到根路径/以及/home/*路径下的Cookie,当时不能访问到/category下的Cookie

2、传输特点

  • (1)每次Request客户端符合domian以及path要求的Cookie都会通过Request Headers传输到服务器端
  • (2)传输的Cookie大小会受到浏览器以及Web服务器的限制

3、安全特点

  • Cookie中的信息很容易被查看,建议加密后存储
  • Cookie容易被XSS攻击利用,可以设置HttpOnly=true,不允许客户端访问(99.9%的浏览器有效)
四、使用经验/建议
  • 不要保存未经加密敏感信息(安全性)
  • 如果不需要在客户端访问,设置HttpOnly=true(安全性)
  • 设置合理的过期时间(传输效率)
  • 不要存储过大的内容(传输效率)
  • 不要存储过多的条目(传输效率)
  • 设置合理的domian、path,减少不必要的Cookie传输(传输效率)
  • 不要存储非Unicode字符(可用性)
  • 不要存储不可恢复的信息(可靠性)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-10-31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、前言
  • 二、工作原理&应用场景
  • 三、特点
  • 四、使用经验/建议
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档