gpt4 book ai didi

java - 未经身份验证的应用程序的 Http session

转载 作者:行者123 更新时间:2023-12-01 09:26:16 25 4
gpt4 key购买 nike

我正在实现一个网络应用程序,该应用程序对新用户来说是未经身份验证的,它将由另一个网络应用程序使用,即不直接由最终用户使用,但父网络应用程序不在我的控制范围内。因此,通过我的网络应用程序,新用户可以通过提供他的个人联系方式来购买他想要的产品,并且我正在为其实现 session 管理。

所以我通过以下方式实现了这一点,并且现在希望您的建议使其变得更好。

1).一旦父 Web 应用程序重定向到我的 Web 应用程序 url,我就会调用这两个 servlet(由于框架结构)。

  • 第一个 servlet 将从 HttpSession 中删除 myUser 的旧对象(如果有)。(因为我的应用程序中没有任何注销,并且读到 onbeforeunload 不可靠),并且它还会从 HttpSession 中删除 myUser 对象Threadlocal(我实现它是为了分别维护每个线程的状态)。

  • 之后,第二个 servlet 创建新对象并将其与 HttpSession 绑定(bind),并使用该 session 保存用户的间歇数据以用于相关服务。

而且我知道 servlet 的每个服务方法都在单独的线程中运行,因此希望一个 session 不会干扰另一个 session ,因为由于 session ID 的唯一性,每个浏览器都会有一个 session ,如果我是这样,请纠正我错误

最佳答案

您可以使用 servlet 过滤器来完成 Serlvet1 的工作,即:

Removing the older object of myUser from HttpSession if there is any.(as there is not any logout in my application, and read that onbeforeunload is not reliable) and it also removes the myUser object from the Threadlocal (that i have implemented to maintain the state of each and every thread separately).

旧应用程序将重定向到您的 Servlet 2,该 Servlet 2 将配置 servlet 过滤器。

通过添加 servlet 过滤器,控件将首先到达 servlet 过滤器,在其中执行用户 session 删除的逻辑并将控件传递给 servlet2

关于java - 未经身份验证的应用程序的 Http session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39810601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com