【问题标题】:Difference between Session Cookies and General Cookies?会话 Cookie 和一般 Cookie 之间的区别?
【发布时间】:2021-06-12 05:14:29
【问题描述】:

我认为只有在用户登录其帐户时才应在服务器端创建会话。

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

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

【问题讨论】:

    标签: cookies session-cookies


    【解决方案1】:

    这是网站的实现细节,无法直接回答。

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

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

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

    因此,问这个问题的另一种方式是“网站的作者是会变得懒惰并且不会打扰删除多余的 cookie,还是会花哨地将它们合并到会话中并清理内容?”

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

    【讨论】:

    • 感谢您的澄清。因此,会话 cookie 是取代一般 cookie,还是两者共存,将取决于网站的作者。对吗?
    • 正确,这取决于网站的作者。
    猜你喜欢
    • 2010-09-26
    • 2011-12-06
    • 2021-12-28
    • 1970-01-01
    • 2011-09-17
    • 1970-01-01
    • 2012-12-09
    • 2012-01-22
    • 2013-08-16
    相关资源
    最近更新 更多