问题标签 [session-timeout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4176 浏览

ruby-on-rails - Ruby on rails - Authlogic:定期检查用户会话是否有效

我正在寻找一种解决方案,允许我定期检查用户会话是否已过期,如果已过期,则将他重定向到登录页面。
我正在使用 Authlogic gem,所以我正在做的是调用一个对 current_user 进行测试的函数。
我的 USER_SESSION_TIMEOUT 是 5 分钟,所以我每 5:10 分钟进行一次 ajax 调用。


我注意到每次调用 current_user 时都会更新用户对象,因此会话会更新为 5 分钟。
只打开一个选项卡时没有问题,但如果我每次调用 check_session_timed_out current_user 时都有 2 个选项卡,则更新用户,因此会话永不过期。

任何的想法?谢谢

0 投票
1 回答
1958 浏览

asp.net - 具有相同会话 ID 的大量 Session_Start

我在我的开发机器上运行一个 ASP.NET 网站(Vista/IIS7 上的 .NET 2.0)。global.asax.cs 中的 Session_Start 方法记录对文件 (log4net) 的每次调用。Session_End 方法还会记录每个调用。

我正在使用 InProc 会话状态,并将会话超时设置为 5 分钟(以避免等待 20 分钟)。

我访问了网站,等待 5 分钟,我看到了 Session_End 日志记录。然后我 F5 网站。浏览器仍然拥有会话 cookie 并将其发送到服务器。调用 Session_Start 并使用相同的会话 id 创建一个新会话(顺便说一句:我需要它是相同的会话 id,因为它用于在数据库中存储数据)。

结果:每次我在以前结束的会话上按 F5 时,都会调用 Session_Start 方法,执行请求并立即调用 Session_End 方法。

当我打开不同的浏览器时,Session_Start 方法只被调用一次。然后 5 分钟后 Session_End 每个 F5 导致 Session_Start/request/Session_End 序列执行。

web.config 相关部分:

0 投票
1 回答
530 浏览

java - 会话超时

当我的登录页面加载时,浏览器正在创建会话。但是用户在会话超时之前不会登录。但在那之后,他尝试登录。但是由于会话已经被破坏,他被带到会话过期页面。

现在我的要求

如果会话在用户仍在登录页面时被破坏,我应该在他尝试登录之前将他重定向到会话过期页面,即当会话被破坏事件被触发时,我应该将他重定向到会话过期页面。

请让我对此采取什么方法。

0 投票
2 回答
1446 浏览

java - J2EE——在提供 Flash 内容时处理 HttpSession 会话超时

在提供基于 Flash 的培训材料时,用户会周期性地遇到 HttpSession 会话超时。目前,不活动超时设置为默认值(30 分钟)。

问题:

  1. 尝试为请求训练 Flash 视频以防止超时的任何用户增加 MaxInactiveInterval 是否是个好主意?

  2. 如果 HttpSession 与查看培训内容相关联,那么更好的方法是使用 servlet 生命周期侦听器重新激活 HttpSession 吗?-- 这可以更精确地控制 HttpSession 对象何时超时。

  3. 任何时候只有一小部分用户实际上会查看此材料,这样做是否应该考虑性能损失?

0 投票
3 回答
39338 浏览

asp.net-mvc - ASP.NET MVC 中何时调用 Session_End()?

Web.Config在 ASP.NET MVC 2 项目中配置了我的文件如下:

并在中添加以下内容Global.asax.cs

Session_Start()当新用户访问网站时调用。我本来希望Session_End()在 1 分钟的空闲时间后被呼叫,但事实并非如此。我错过了什么吗?

0 投票
5 回答
121082 浏览

ruby-on-rails - 如何清空/销毁 Rails 中的会话?

我似乎在任何地方都找不到它...如何在 Rails 中删除/销毁/重置/清空/清除用户的会话?不仅仅是一个价值,而是整个事情..

0 投票
3 回答
3434 浏览

asp.net - ASP.NET 会话状态超时问题

我试图在我的 asp.net 应用程序中检测会话状态超时,但无法这样做。我有一个派生自 System.Web.UI.Page 的基类,如下所示:-

我需要检查会话状态的所有页面都派生自这个基类,而不是“System.Web.UI.Page”。此外,所有这些页面都具有 EnableSessionState="True"。如果相关的话,我的 global.asax 文件中有一个空白的 Session_Start() 方法。

出于某种原因,在第一次请求之后,“Session.IsNewSession”属性始终为 false。仅对第一个请求为真,然后始终为假。我将超时设置为 1 分钟。会话似乎永远不会超时。我在这里想念什么?

我还在 SQL Server 2008 中实现了一个状态服务器。这不是进程内会话状态实现。

提前致谢。

0 投票
1 回答
5043 浏览

java - 会话超时配置不起作用?

web.xml我有这个

SessionListener.java我有

但它似乎System.out.println("Visitor Removed!!")从未被执行过。我是 Tomcat 6 和 JSP 的新手。请问有什么建议吗?

0 投票
2 回答
672 浏览

asp.net - Forms Authentication 注销很快,本地工作正常!

我的托管公司面临一个问题,我使用了一个使用 FormsAuthentication 的项目,问题是虽然它成功登录,但它很快注销,我不知道可能是什么原因,所以在我的 web.config 文件中我添加了这些行:

这是我在自定义登录页面中使用的代码:

您还会发现那行代码: FormsAuthentication.RedirectFromLoginPage(IDTextBox.Text, RememberCheckBox.Checked); 被评论是因为我认为登录时票证可能有问题,所以我手动创建了它,我知道我尝试过的每件事都没有奏效,所以有人知道问题出在哪里吗?在此先感谢,巴赫。

0 投票
3 回答
920 浏览

c# - 如何避免由于超时而引发的 HttpException

我正在开发一个由 .NET asp/C# 代码驱动的网站。客户端要求会话有 25 分钟的超时。但是,有时会使用该站点,并且用户会长时间保持连接(超过 25 分钟)。Session_End 被触发:

用户稍后返回,但当他们与网站交互时,他们会收到错误消息,我们会收到以下电子邮件通知:

用户:未经身份验证的用户

错误:System.Web.HttpException

说明:无法加载视图状态。正在加载视图状态的控制树必须与在上一个请求期间用于保存视图状态的控制树相匹配...

堆栈跟踪的重要部分是System.Web.UI.Control.AddedControl. 显然,服务器已经丢弃了会话数据,并且正在发送新数据,但客户端正在尝试处理旧数据。因此错误"the control tree into which viewstate is being loaded [doesn't] match the control tree that was used to save the viewstate during the prevoius request."

那么问题来了。当连接超时时,如何强制指示用户的浏览器重定向到“您已注销”屏幕?(我应该添加到 Session_End 方法中吗?)