【发布时间】:2014-06-28 16:25:24
【问题描述】:
我有一个服务器,它将会话的客户端 cookie 存储为 JSESSIONID,但是如果用户在客户端从 cookie 存储中删除它,客户端会发送一个新的 sessionid,如果你告诉我如何在服务器中识别它
request.getSession(false);,比如何区分第一个请求和这个请求?
【问题讨论】:
标签: tomcat cookies session-cookies
我有一个服务器,它将会话的客户端 cookie 存储为 JSESSIONID,但是如果用户在客户端从 cookie 存储中删除它,客户端会发送一个新的 sessionid,如果你告诉我如何在服务器中识别它
request.getSession(false);,比如何区分第一个请求和这个请求?
【问题讨论】:
标签: tomcat cookies session-cookies
如果客户端携带了JSESSIONID,但request.getSession(false)方法返回NULL,我们无法区分会话是否过期或者客户端是否修改了JSESSIONID。
第一个请求通常不携带 JSESSIONID cookie。您可以使用此信息来区分客户端是否修改了 JSESSIONID。
也就是说,通常情况下,我们让 Web 容器为我们管理会话。所以,我们不读/写 JSESSIONID cookie。如果您确实需要直接使用 JSESSIONID cookie,也许您可以详细说明您要解决的问题。
【讨论】: