1

我在将 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。

4

0 回答 0