【发布时间】:2014-09-03 17:24:30
【问题描述】:
我正在使用 Grails Spring Security Core 插件,现在通过 Facebook Authentication for Spring Security Core 插件添加 Facebook 身份验证。我可以通过 Facebook 进行身份验证,但它总是重定向回不正确的 URL。我想重定向到localhost:8080/rar/user/home,但是登录后我被重定向到localhost:8080/rar/#_=_。通过标准登录表单登录时,我被正确重定向到localhost:8080/rar/user/home。
我的 FB 应用设置有 http://localhost:8080/rar/ 作为站点 URL。我正在使用这些插件:
compile ':spring-security-core:2.0-RC2'
compile ":spring-security-ui:1.0-RC1"
compile ":spring-security-facebook:0.15.2-CORE2"
并且有这些配置设置:
grails.plugin.springsecurity.successHandler.defaultTargetUrl = '/user/home'
grails.plugin.springsecurity.facebook.filter.type='redirect'
grails.plugin.springsecurity.facebook.domain.classname='mvp.FacebookUser'
grails.plugin.springsecurity.facebook.domain.appUserConnectionPropertyName='user'
grails.plugin.springsecurity.facebook.appId='<APPID>'
grails.plugin.springsecurity.facebook.secret='<SECRET>'
grails.plugin.springsecurity.facebook.filter.redirect.failureHandler='redirectFailureHandlerExample'
grails.plugin.springsecurity.facebook.autoCreate.roles=['ROLE_USER', 'ROLE_FACEBOOK']
我认为这个问题并不重要,但我有一个 FacebookAuthService,它实现了 create() 来搜索与 Facebook 用户具有相同电子邮件地址的现有用户,并在找到时合并帐户。目前,我的 redirectFailureHandlerExample 只记录一条消息,该消息从未被命中。
非常感谢任何帮助!
【问题讨论】:
标签: facebook spring grails spring-security grails-plugin