cookie

cookie是在客户端运作的(浏览器)

cookie是客户端保存用户信息的机制,用来记录用户的一些信息。每次HTTP请求时客户端都会发送相应的cookie

到服务端,过期时间可以任意设置,如果不清除,在很长一段时间都会保留,即便把电脑关机了

 

 

session

session是在服务器端运作的()

session是服务器端使用的一种记录客户端的机制,使用上比cookie简单一些同一个客户端和服务端交互时,不需要每次

都传回cookie值,而是只要传回一个ID,这个ID客户端第一次访问服务器的时候生成的,而且每个客户端都是唯一的。这样每个客户端都有了一个唯一的ID,客户端只要传回这个ID就行了,这个ID通常是name为jsesionid的一个cookie。session是依据这个ID来识别是否为同一个用户(只认ID不认人)

共同点:

session和cookie的共同点:记录用户状态

cookie是记录在浏览器上面的

session是记录在服务器上的

http的cookie和session都可以是伪造的

 

cookie的内容主要包括:名字,值,过期时间,路径和域。

看到一个cookie,至少知道cookie这6个字段分别是什么?

name:cookie的名字

value:cookie的值

domain:cookie的作用域

path:cookie使用的路径

secure:  cookie的安全策略

expire:cookie的过期时间

cookie和session的区别:

1. cookie数据存放在客户的浏览器上,session数据放在服务器上

2. cookie不是很安全,别人可以分析放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session

3. session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
   考虑到减轻服务器性能方面,应当使用COOKIE。

4.  单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

5. 所以个人建议:
   将登陆信息等重要信息存放为SESSION
   其他信息如果需要保留,可以放在COOKIE中