会话 Cookie 和一般 Cookie 之间的区别?

时间:2021-06-12 05:14:29

标签: cookies session-cookies

我认为会话应该只在用户登录到他们的帐户时在服务器端创建。

因此,例如,当用户在未登录的情况下访问网站时,他们仍然会获得一般 cookie。然后,如果他们稍后决定登录他们的帐户,则存储在 cookie 中的会话 ID 将从服务器提供给客户端。在这种情况下,包含会话 ID 的 cookie 会取代一般 cookie,还是两个 cookie 会一起存在?

希望用简单的术语解释。谢谢!

1 个答案:

答案 0 :(得分:0)

这是网站的一个实现细节,所以不能直接回答。

会话cookie可能是创建服务器端并与保存的会话相关联,但它仍然必须保存在客户端,以便客户端浏览器可以提醒服务器使用哪个会话(并验证它)。

从浏览器的角度来看,会话 cookie 和任何其他 cookie 之间没有区别。这只是一块饼干。因此,只要不存在名称冲突,就没有技术上的原因为什么所有 cookie 不能共存。

从网络服务器的角度来看,如果非会话 cookie 有一个目的,那么在有会话时该目的可能仍然存在,因此删除它们以在其位置使用会话可能只会使代码更加复杂。但这并不能说明他们是否会这样做。

所以,问这个问题的另一种方式是“网站的作者是不是会懒惰而不去删除多余的 cookie,或者他们会花哨地将它们合并到会话中并进行清理?”

还要考虑会话 cookie,其他 cookie 可能都有不同的生命周期,因此无论如何合并它们可能没有意义。

相关问题