什么是Cookie?浏览器
Cookie其实是一小段的文本信息,客户端请求服务器,若是服务器须要记录该用户状态,就使用 response 向客户端浏览器颁发一个Cookie。客户端会把Cookie存起来,当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器,服务器检查该Cookie,以此来辨认用户状态,服务器也可根据需求修改Cookie的内容;安全
Cookie的优缺点服务器
优势:cookie
1.极高的扩展性和可用性session
能够控制保存在cookie中的session对象的大小;dom
经过加密和安全传输技术(SSL),减小Cookie被破解的可能性;性能
只在Cookie中存放不敏感数据,被盗不会有重大损失;网站
控制Cookie的生命期,使之不会永远有效,偷盗者可能会拿到一个过时的Cookie;加密
基于文本轻量结构;对象
Cookie存储在客户端并在发送后由服务器读取;
缺点:
1.Cookie 数量和长度的限制
每一个domain最多只能有20条cookie,每一个cookie的长度不能超过4KB,不然被截掉;
2.安全性
Cookie可能被拦截、篡改。若是Cookie被人拦截了,那人就能够取得全部的session信息
3.有些状态不可能保存在客户端
例:防止重复提交表单,在服务端保存计数器,若是将此计数器保存在客户端,无用。
延伸:
Cookie 和 session 的区别
1. cookie数据 ==》 客户的浏览器
session数据 ==》 服务器
2.Cookie不是很安全,别人能够分析存放在本地的Cookie并进行Cookie欺骗,考虑到安全应当使用session
3.session会在必定时间内保存在服务器上,当访问增多,会比较占用服务器的性能,考虑到减轻服务器性能方面,应当使用Cookie
4.单个Cookie数据不能超过4K,不少浏览器都限制一个站点最多保存20个Cookie
建议:
登陆信息等重要信息存放session
其余信息若是要保留,能够放在Cookie