spring-mvc - bootstrap modal 作为 spring security 的登录页面

标签 spring-mvc login spring-security modal-dialog thymeleaf

在我的网络应用程序中,我有一个登录/注册部分作为引导模式,当单击标题中的登录图标时会出现该模式。我正在尝试在 spring 安全性中配置它,但我看到我必须在 config 方法中返回一个页面:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
        .formLogin().loginPage("/login")
        .and()
        ...
}

我的问题是如何正确地将模态实现为登录页面而不是完整的 html 页面。我将 spring mvc 4 与 spring security 4 和 thymeleaf 一起使用

在我的 html 页面的标题中:
<div class="col-xs-7 col-sm-4">
    <div class="top-social-last top-dark pull-right"
         data-toggle="tooltip" data-placement="bottom"
         title="Login/Register">
        <a class="top-icon-circle" href="#login-modal"
           data-toggle="modal">
            <i class="fa fa-lock"></i>
        </a>
    </div>
    <!-- social icons -->
</div>

这个标题和模态实现作为一个片段共享,包含在所有页面中(模态的长代码,所以我没有在这里复制它)。

现在有某些需要登录的请求,所以我必须在安全配置中添加一个登录页面,这些请求应该被重定向到,但我没有页面,我只有这个模式,在所有页面之间作为片段共享.我认为我做得不对,所以如果有人可以告诉我如何在 Spring Security 中使用模态。

例如,在airbnb站点中,如果您想点赞广告并且未登录,则会弹出模态而不是重定向到页面。

最佳答案

您必须在 Bootstrap 中创建登录模式,并在有人单击登录按钮时显示它。您的登录模式应包含在 <form> 中的标准登录表单标签。单击提交按钮后,表单应将用户重定向到th:action="@{/j_spring_security_check}"就这样。

关于spring-mvc - bootstrap modal 作为 spring security 的登录页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37757714/

相关文章:

java - 我可以配置 MockMvcBuilders.standaloneSetup() 以使用我的消息转换器 XML 配置吗?

java - 如何在@requestParam中设置新的date()?

java - Spring 表达式语言 - 在注释中获取系统属性

login - 使用 Mechanize 和 Nokogiri 登录网站?

java - 在 spring security 中保护两个或更多/** url

java - InternalResourceViewResolver 所在文件的名称

ios - Facebook SDK 3.2 登录仅在应用程序未终止时才有效

login - 如何使用 PAT 或 OAUT 连接 TFS Online?

grails - 身份验证失败-Grails无法提供凭据

java - 无法将 spring.example.service.UsuarioService 字段 spring.example.config.security.SecurityConfig.usuario 设置为 $Proxy47