Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

请问StandardRequest中的getValidSession()方法是否写错了,session有效的情况下,需要创建一个新的session来返回吗? #505

Open
zhangjibiao opened this issue Jul 17, 2023 · 4 comments
Labels

Comments

@zhangjibiao
Copy link

源码

    public Session getValidSession() {
        Session session = getSession();
        if (session == null) {
            session = mSessionManager.createSession();
        } else if (session.isValid()) {
            session = mSessionManager.createSession();
        }

        setAttribute(REQUEST_CREATED_SESSION, session);
        return session;
    }

中,else if (session.isValid()) 是session有效的情况下,创建了一个新的session来返回,不应该是在session无效的情况下创建一个吗?

@zhangjibiao zhangjibiao changed the title StandardRequest中的getValidSession()方法是否写错了,session有效的情况下,需要创建一个新的session来返回吗? 请问StandardRequest中的getValidSession()方法是否写错了,session有效的情况下,需要创建一个新的session来返回吗? Jul 17, 2023
@zhangjibiao zhangjibiao closed this as not planned Won't fix, can't repro, duplicate, stale Jul 17, 2023
@zhangjibiao zhangjibiao reopened this Jul 17, 2023
@yanzhenjie
Copy link
Owner

好像是有点问题啊,等我详细看看当时为什么这么写。

1 similar comment
@yanzhenjie
Copy link
Owner

好像是有点问题啊,等我详细看看当时为什么这么写。

@zhangjibiao
Copy link
Author

好像是有点问题啊,等我详细看看当时为什么这么写。

好的,谢谢啦

@zhangjibiao
Copy link
Author

现在会出现一种情况,只要调用这个api,要么返回一个新的session对象,要么返回一个过期的session对象。
servelet的HttpServletRequest.getSession()方法,在session有效的情况下,是会返回已有的session对象的

@yanzhenjie yanzhenjie added the bug label Apr 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants