【问题标题】:Session in Spring Boot applicationSpring Boot 应用程序中的会话
【发布时间】:2017-11-07 02:49:17
【问题描述】:

我的项目是一个 springboot 应用程序,具有基本的 crud 功能,其登录页面仅使用 HTML 和 CSS。如何为登录和注销添加会话

【问题讨论】:

  • 你为什么不使用 spring security 呢?

标签: java session spring-boot


【解决方案1】:

正如其他人所建议的,您可以使用 Spring 安全性。或者,如果您不想处理 Spring Security 的复杂性,您可以在控制器的处理程序方法的参数中获取 HttpSession 对象。用户登录后,您可以使用HttpSession.setAttribute("name you want to refer to", actual value or object) 在该会话中设置值或对象。当用户按下注销时,您可以使用HttpSession.invalidate(); 完成会话。

【讨论】:

  • 嘿,我正在制作类似的东西。我有一个主页,其中提供了一个链接以作为用户登录。用户也可以在不登录的情况下使用该应用程序。现在,我创建了一个用于登录的 rest 端点,并使用 ajax 调用它来验证来自 mysql 数据库的电子邮件和密码。我想保持该用户的登录会话,直到他自己注销或经过一定时间。我读到我可以使用弹簧安全,但不清楚如何。我很清楚如何使用会话属性,但我想为此使用弹簧安全性,任何人都可以帮忙。 ?
  • @SahilGupta 我没有使用过 Spring 安全性。我不知道如何在安全发挥作用时保持会话。
  • @FarazDurrani 我尝试使用 HttpSession,但它不会在请求之间持续存在。你能帮我吗:stackoverflow.com/questions/56648205/…,好吗?
【解决方案2】:

最好的解决方案是使用 Spring Security。 看看这个:https://spring.io/guides/gs/securing-web/

【讨论】:

    【解决方案3】:

    推荐使用Spring Security。

    如果你在谷歌搜索“spring security tutorial”,你可以找到很多例子。

    例如,它是 Angular js (1.x) 的官方教程 https://spring.io/guides/tutorials/spring-security-and-angular-js/

    如果您不想使用 Spring Security,则必须创建一个 http 会话并将登录的用户数据存储在 http 会话中。

    在 spring 中,您可以将 HttpSession 注入到您的 bean 中,您可以添加会话属性,或者您可以创建会话范围的 bean。

    【讨论】:

      【解决方案4】:

      spring web securitysee link herehere简易教程

      【讨论】:

        【解决方案5】:

        Spring Security 是身份验证和授权的最佳选择。对于登录,如果新用户登录,那么您需要为特定用户维护会话,直到注销。您可以使用 Spring 安全会话管理。

        http://www.baeldung.com/spring-security-session

        您可以在 http.setAttribute("USER_DETAILS", userDetails); 中设置 UserDetails 对象

        (userDetails 是内置类中的 UserDetails 的对象)

        你可以像 httpSession.getAttribute("USER_DETAILS"); 这样使用这个 httpSession 对象。用于进一步操作。对于注销使用可以使用 httpSession.invalidate() 方法。

        【讨论】:

          猜你喜欢
          • 2018-04-07
          • 2021-02-21
          • 1970-01-01
          • 2017-03-16
          • 2021-10-19
          • 2017-01-27
          • 2021-11-10
          • 2017-03-26
          • 1970-01-01
          相关资源
          最近更新 更多