当前位置: 首页 > 知识库问答 >
问题:

如何在会话超时后将用户重定向到自定义网页?

富钧
2023-03-14

我想通过我的代码将用户重定向到会话超时页。我可以在过滤器中写什么逻辑,检查会话是否超时,并将用户重定向到那个定制页面(比如CustomSessionTimeout.jsp)。此页面不必经过任何筛选。

这是第一个过滤器中的一个方法的签名

public void doFilter(ServletRequest ServletRequest,ServletResponse ServletResponse,FilterChain

共有1个答案

姬俊驰
2023-03-14

您可以通过查看用户是否发送了一个会话cookie,以及根据服务器,该cookie不再有效的请求来检查这一点。

@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) {
    HttpServletRequest request = (HttpServletRequest) req;
    HttpServletResponse response = (HttpServletResponse) res;

    if (request.getRequestedSessionId() != null && !request.isRequestedSessionIdValid()) {
        // Session has expired! Now do your job.
        response.sendRedirect(request.getContextPath() + "/CustomSessionTimeout.jsp");
        return;
    }

    chain.doFilter(req, res);
}
 类似资料:
  • 我在global.asax中尝试了以下代码,但不起作用,并导致Application_Error(“响应在此上下文中不可用。”)。

  • 我使用的是和和。一切都很好,但是当会话超时的时候,我会得到以下错误”,因为我已经在布局的main.gsp文件中调用了session变量。现在,我希望在每次会话超时后重定向到登录页面,并且不显示错误页面。要在会话超时后重定向,我已经在文件中这样做了 但是有这么多页,所以很难写每一页。还有其他的方法做这件事吗?请帮忙。

  • 我正在尝试清除会话,并在会话超时时将用户注销,并重定向到登录页面。登录页是帐户控制器中的登录方法返回的部分视图。当会话超时时,登录视图会在当前页面中呈现用户在会话超时之前所在的页面以及URL。 Web.config

  • 问题内容: 如何将* .appspot.com域重定向到自定义域。我想要的是这样重定向域: 注意:我正在使用go and gorilla mux。 问题答案: 您可以按照此处所述的方法进行组合,以重用代码。 在您的情况下,组合器将如下所示(根据您的口味和要求进行调整): 您可以使用以下方法包装处理程序:

  • 我正在做一个游戏,需要一个大堂的玩家,但没有帐户。有点像游戏,间谍。我正在使用Meteor会话来了解哪个玩家加入了大厅,这样我就可以返回该特定玩家的正确数据。我有一个join.js组件,用户在其中输入大厅访问代码和用户名。此组件还将用户重定向到大厅。join.js位于路由/join,而lobbies位于路由/:lobby。下面是join.js handleSubmit方法,它接受用户输入并将其放入

  • 问题内容: 默认情况下,登录后django将用户重定向到帐户/个人资料页面,或者,如果你编辑LOGIN_REDIRECT_URL,则可以将用户重定向到你在settings.py中指定的另一页面。 很棒,但是我希望用户(登录后)被重定向到自定义页面,该页面的链接看起来像这样:。因此,在这种情况下,默认帐户/配置文件或设置将不起作用,因为两者都是静态的。就我而言,地址部分针对每个用户而变化。 任何想法