Java 会话cookie和持久cookie

Java 会话cookie和持久cookie,java,php,asp.net,cookies,session-cookies,Java,Php,Asp.net,Cookies,Session Cookies,据我所知,会话cookie存储在浏览器的进程中(内存中,而不是硬盘中)。当用户关闭浏览器时,此cookies被释放,我们无法再次获取此cookies。因此,这种cookie用于保存会话id 持久cookie保存在硬盘上。它们在过期之前都是活着的。通常,我们通过设置过期时间来创建此cookie 因此,我怀疑: 如果我们设置了一个没有过期时间的cookie,该cookie将被视为会话cookie?它将保存在浏览器的进程中吗 具有过期时间的cookie必须被视为持久cookie?我们可以设置一个coo

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

持久cookie保存在硬盘上。它们在过期之前都是活着的。通常,我们通过设置过期时间来创建此cookie

因此,我怀疑:

  • 如果我们设置了一个没有过期时间的cookie,该cookie将被视为会话cookie?它将保存在浏览器的进程中吗

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

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


  • 就我而言,我们从服务器发送回客户机的内容存储在用户的硬盘中,正如您所说,它是
    持久cookie
    会话cookie
    存储您与网站进行对话的一些信息,在清除缓存或重新启动浏览器后,对话信息会发生更改。当您访问网站时,您不会向服务器发送会话id,因为您还没有会话id。然后,服务器生成会话id并将会话信息、会话id作为键值对存储在服务器端,然后将会话id返回到客户端,客户端存储在
    持久cookies
    中。这就是我眼中的过程。

    会话也保存在用户的机器上。只有当浏览会话过期时,它们才会过期。这就是会话不应该保存敏感数据的原因,因为它们可能被劫持。甚至不用学习如何创建无限会话。在某些情况下,它们可以在浏览会话之后继续存在,但这是一种不好的做法,不值得学习会话保存在用户的计算机上??会话保存在服务器上。@user1928545会话cookie保存在用户的计算机上,但真实的数据保存在服务器上的文本文件中,其中包含用户拥有的会话cookie的名称。例如用户会话id=vv1gdmflejj4lco1m6hfju7ub0服务器有文本文件=sess\u vvv1gdmflej4lco1m6hfju7ub0您是对的@Class,但是会话id保存在计算机上。这些问题说,他认为会话cookie存储在内存中,而不是硬盘上,但事实并非如此。信息是,但钥匙仍在硬盘上。它可以被劫持。它可以,但很容易将HTTPonly添加到会话cookie中。quote:session_id作为服务器端的键值对,并将会话_id返回到客户端,客户端存储在持久cookie中。我不认为会话id存储在会话cookies中,这是在浏览器的过程中。当我使用servlet时,我发现它是这样工作的。当客户端发送的请求在cookie中没有会话id时,会在服务器端生成会话id。@u\u soul或诸如此类的东西:所谓的
    会话id
    在浏览器中生成,并存储在客户端的会话cookie中,但servlet有自己的会话机制,因此,它创建了自己的
    servlet\u session\u id
    (类似的东西),存储在客户端的持久cookie和服务器端,以存储信息和跟踪浏览器。您使用chrome开发工具还是Firebug?@barate\u soul是的,当我向服务器发送第一个请求时,它的cookie中没有
    jsessionid
    。但是当响应发回时,它的cookie中有一个
    jsessionid