设置cookie -----cookie被自动添加在require header中--服务端收到cookie浏览器
cookie是存储在浏览器中的纯文本,浏览器的安装目录下会专门有一个cookie文件夹存放各个域下设置的cookie安全
发送请求时,浏览器会自动检查是否有相应的cookie,若是有则自动添加在require header中cookie
存储在cookie中的数据在每次发送请求的时候都会自动放在http请求中,若是这些数据不是每一个请求都须要发给服务端的,那么这些cookie会增长网络开销;若是是,就会大大免去重复添加操做;因此 对于每次请求都要携带的信息就适合放在cookie中网络
有限制: 4Kb 数量最多20个session
expries: http/1.0协议中的选项,必须是GMT格式(经过new Date().toGMTString()或new Date().toUTCString()),默认有效期是session,即会话cookie,浏览器关闭后销毁dom
Max-age: http/1.1协议中,以秒为时间单位,值为: 负数 0 整数, 负数表明有效期为session,0表明删除,正数表明有效期为建立时间+max-agexss
domain+path=url,限制cookie被哪些URL访问ui
设置cookie只在确保安全的请求中才发送,如https协议或其余安全协议中,默认是cookie不会带secure选项编码
在客户端这只secure时,需是https协议url
设置是否能经过js访问,默认状况下,此项为空,js能够进行访问(读 删 修)
若是为true,这类cookie客户端没法设置,只能经过服务端设置
目的: 保障安全,避免遭受xss攻击
服务端: set-cookie
客户端: docunment.cookie 注意客户端设置secure有条件(只有在https协议的网页中才能成功) 且不能设置httponly
修改: 从新赋值
删除: 设置过去时间点
编码: cookie为字符串,其中的空格 分号 逗号会被当作特殊字符,须要进行编码.通常采用encodeURIComponent/decodeURIComponent或者encodeURI/decodeURI