【发布时间】:2023-04-05 19:44:02
【问题描述】:
当会话将被初始化并通过过滤器允许它时,我如何跟踪第一个 HTTP 请求?
初始化此会话后,“它”将始终通过过滤器。
【问题讨论】:
-
你必须解决你的问题,这有点不清楚。您的描述暗示您的过滤器将始终通过请求,您的意思是 reject 而不是 allow?
标签: jakarta-ee session-timeout
当会话将被初始化并通过过滤器允许它时,我如何跟踪第一个 HTTP 请求?
初始化此会话后,“它”将始终通过过滤器。
【问题讨论】:
标签: jakarta-ee session-timeout
您可以将会话属性用作布尔标志:
HttpSession sess = request.getSession();
Object o = sess.getAttribute("FIRST_HIT");
if (o == null) {
//execute first hit stuff here
sess.setAttribute("FIRST_HIT", "FIRST_HIT");
}
在哪里“请求”ISA javax.servlet.ServletRequest
这是一个“每个会话只执行一次”样式逻辑,因为我们将布尔标志存储在会话对象(或会话范围)中
【讨论】: