1

我想将从 Grails Spring Security 插件生成的登录视图的登录表单放置在 layouts/main.gsp 的主布局中。我只是将它复制过来,但它不起作用,因为原因,现在没有控制器可用于将表单数据传递给。表单代码如下所示:

<form action='${postUrl}' method='POST' id='loginForm' class='cssform' autocomplete='off'>
      <p>
        <label for='username'><g:message code="springSecurity.login.username.label"/>:</label>
        <input type='text' class='text_' name='j_username' id='username'/>
      </p>
      <p>
        <label for='password'><g:message code="springSecurity.login.password.label"/>:</label>
        <input type='password' class='text_' name='j_password' id='password'/>
      </p>
      <p id="remember_me_holder">
        <input type='checkbox' class='chk' name='${rememberMeParameter}' id='remember_me' <g:if test='${hasCookie}'>checked='checked'</g:if>/>
        <label for='remember_me'><g:message code="springSecurity.login.remember.me.label"/></label>
      </p>
      <p><input type='submit' id="submit" value='${message(code: "springSecurity.login.button")}'/></p>
    </form>

我应该如何更改此代码,以便将表单代码发送到 Login auth 操作?

谢谢。

4

1 回答 1

2

正如我所理解的,您的问题是表单操作使用什么?postUrl应该与grails.plugins.springsecurity.apf.filterProcessesUrl配置中的属性相同,默认为/j_spring_security_check.

如果您没有更改此值,则可以使用/j_spring_security_check代替${postUrl}.

Spring Securty Plugin 具有处理此 URL 并授权用户的特殊过滤器。下一步取决于配置,但如果我没记错的话,默认情况下它将用户重定向到/.

请参阅http://grails-plugins.github.io/grails-spring-security-core/guide/urlProperties.html上的配置选项

于 2012-06-09T12:03:43.310 回答