会话 cookie 和持久 cookie

roa*_*oul 5 php java asp.net cookies session-cookies

据我所知,会话 cookie 存储在浏览器的进程中(在内存中,而不是在硬盘中)。当用户关闭浏览器时,此cookies 被释放,我们无法再次获取此cookies。所以这种cookies是用来保存session id的。

持久性 cookie 保存在硬盘上。他们一直活着,直到他们到期。通常,我们通过设置过期时间来创建此 cookie。

所以我的疑问是:

  1. 如果我们设置了一个没有过期时间的cookie,这个 cookie 会被当作会话 cookie 吗?它会保存在浏览器的进程中吗?

  2. 具有过期时间的 cookie 必须被视为持久 cookie 吗?我们可以设置一个 cookie的过期时间存储在浏览器的进程中吗?

  3. 我们可以让会话cookies不出现在浏览器的进程中吗?让它留在磁盘上?如果可以,如何编码,php/asp.net/java ??

Jud*_*ing 1

就我而言,我们从服务器发送回客户端的内容存储在用户的硬盘中,就像persistent cookie您所说的那样。它session cookie存储您与网站进行的对话的一些信息,在您清除缓存或重新启动浏览器后,对话信息会发生变化。当您访问网站时,您不会向服务器发送 session_id,因为您还没有 session_id。然后服务器生成一个session_id并存储会话信息,session_id作为键值对存储在服务器端,并将session_id返回给客户端,存储在persistent cookies. 这就是我眼中的过程。