JavaWeb编程之Cookie

JavaWeb编程之Cookie

一般cookie存储的信息

  1. 保存用户的登陆信息
  2. 创建购物车
  3. 跟踪用户的行为

##cookie格式与常见属性

  1. 每条cookie都以key-value的形式。
  2. key和value都必须是URL编码。

    ps:URL编码是一种浏览器用来打包表单输入格式的。
    编码规则:

    1. 每对key-value由 &; 符分隔
    2. 每对来自表单的key-value由=分隔
    3. 若用户没有输入值给这个key,那么次key在cookie中依旧存在,但与其相对应的value值不存在
    4. 任何特殊的字符,将以百分号%用十六进制编码–如汉字的url编码,胡的ASCII码是-17670,十六进制是BAFA,url编码是%BA%FA
  3. 两对cookie间以分号和空格分隔

cookie的缺点

  1. 安全性

    由于cookie在http中是明文传递的,其中所存储的数据可以被他人访问,可能会被篡改、盗用。

  2. 可存储内容大小限制

    cookie的大小限制在4kb左右,不适合做大量存储。

  3. 增加流量

    cookie每次请求都会被自动添加到request header请求头中,无形中增加了流量,cookie信息量越大,对服务器请求时间越长。

附加知识-不同编码中英文所占字节大小

字节(Byte):字节是通过网络传输信息(或在硬盘/内存中存储信息)的单位;1Byte = 8bit。

  1. ASCII码:一个英文字母为1Byte,一个中文汉字为2Byte;包括英文和中文的标点符号。
  2. Unicode:一个英文字符占2Byte,一个中文为占2Byte(含繁体)。
  3. UTF-8:一个英文字符占1Byte,一个中文汉字占3Byte(含繁体)。

----\(˙<>˙)/----赞赏一下吧~