1

我倾向于使用 jsp 中的会话。

我有一个发送登录信息并传递给 servlet 的应用程序。如果他们正确的 servlet 创建一个新会话并将 page.jsp 发送到客户端。页面检查是否存在任何会话,如果不创建新会话并阻止用户。

当有任何会话时,我想阻止访问此页面的可能性,但如果我使用:

<%@ page session=false %@>

我将失去对旧会话的访问权限(如果她存在)。如何强制 jsp 连接到旧会话但不创建新会话?

如果我错过了什么,我将非常感激:

  • 最佳实践
  • 链接,解释等
  • 任何建议:)
4

1 回答 1

1

您无法创建会话。您只能获取一个会话,这将返回一个先前创建的会话(如果存在),或者创建一个并返回它(如果还没有会话存在)。

即使是未登录的用户也可以进行会话。事实上,如果他们浏览到一个没有session=false. 身份验证应该简单地获取会话,并在会话中存储一些authenticated标志(或userId令牌)。

如果您不希望经过身份验证的用户进入登录页面,那么当他们进入此页面时,检查userId令牌是否已经在会话中,并重定向到其他页面。

于 2012-11-14T13:28:48.183 回答