cookies是保留在客户端的,每次发出页面请求时,都会把里面的数据发送给服务器端,适合做保存用户的个人设置、爱好等。
session保留在服务器端,给每个客户分配一个唯一的数字,作为每个客户的标识,适合做客户的身份验证。
区别:
1. cookie保存在客户端,服务器能够知道其中的信息;
session保存在服务器,客户端不知道其中的信息。
2. cookie中保存的是字符串;
session中保存的是对象。
3. cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不到的;
session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到。
4. cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session;
session会在一定时间内保存在服务器上,当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面应当使用cookie。