Cookie在浏览器和服务器之间的传输过程示意图:
Cookie是储存在用户本地终端上的数据,是一个文件,可以叫做浏览器缓存。
在PHP中,任何从客户端发送的Cookie数据都会被自动存入到$_COOKIE
超全局数组变量中。通过$_COOKIE数组可以获取Cookie数据。
其中 cookie机制将信息存储于用户硬盘,因此可以作为跨页面全局变量, 这是它最大的一个优点
Cookie的缺点:
- Cookie被附加在HTTP消息中,无形中增加了数据流量。
- Cookie在HTTP消息中是明文传输的,所以安全性不高,容易被窃取。
- Cookie存储于浏览器,可以被篡改,服务器接收后必须先验证数据的合法性。
- 浏览器限制Cookie的数量和大小(通常限制为50个,每个不超过4KB),对于复杂的存储需 求来说是不够用的。
课外知识:
Cookie和Session的区别:
1、Cookie和Session都是会话技术,Cookie是运行在客户端,Session是运行在服务器端。
2、Cookie有大小限制以及浏览器在存cookie的个数也有限制,Session是没有大小限制和服务器的内存大小有关。
3、Cookie有安全隐患,通过拦截或本地文件找得到你的cookie后可以进行攻击。
4、Session是保存在服务器端上会存在一段时间才会消失,如果session过多会增加服务器的压力。