我在将 FOSFacebookBundle 集成到我的网站时遇到了一点问题。当我点击“Connexion”按钮时,用户被重定向到/facebook/login_check,并且一些随机令牌被添加到url(状态和代码)。但是每秒都会给这些令牌一个新的值,并且页面仍然是空白的。
这是我的代码:
[配置.yml]
security:
providers:
fos_userbundle:
id: fos_user.user_manager
my_fos_facebook_provider:
id: my.facebook.user
firewalls:
public:
pattern: ^/facebook
fos_facebook:
app_url: "http://www.facebook.com/apps/application.php?id=[MY_APP_ID]"
server_url: "http://localhost/[MY_APP]/app_dev/"
login_path: /facebook/login
check_path: /facebook/login_check
provider: my_fos_facebook_provider
default_target_path: /
anonymous: true
logout:
handlers: ["fos_facebook.logout_handler"]
main:
form_login:
login_path: /login
check_path: /login_check
provider: fos_userbundle
[路由.yml]
_security_check:
pattern: /facebook/login_check
_security_logout:
pattern: /logout
[layout.html.twig]
<script>
function goLogIn(){
window.location.href = "{{ path('_security_check') }}";
}
function onFbInit() {
if (typeof(FB) != 'undefined' && FB != null ) {
FB.Event.subscribe('auth.statusChange', function(response) {
if (response.session || response.authResponse) {
setTimeout(goLogIn, 500);
} else {
window.location.href = "{{ path('fos_user_security_logout') }}";
}
});
}
}
</script>
你知道为什么吗 ?
提前致谢。
PS:我使用 Symfony 2.1 和 FOSUserBundle。