2013-09-27 25 views
0

我正在使用Facebook集成我的一個symfony2應用程序。 我已經使用了FOSUserBundle和FOSFacebookUserBundle。FOSFacebookBundle會在symfony2中創建apllication(用戶)會話嗎?

我可以在我的應用程序和用戶會話創建時通過表單登錄。 同樣當我使用FB來登錄我創建的應用程序FB會話。在這裏我想創建我的用戶會話,就像我們通過form_login一樣。

FOSFacebookBundle會提供任何身份驗證嗎?我們是否需要爲相同的身份編寫單獨的身份驗證提供程序?

我已經完成了FOsUserBUndle和FOSFacebookBundle中給出的所有設置。

任何人都可以幫助我嗎?

回答

0

最後,我已經解決了這個問題。

是的,FosFacebookBundle將爲應用程序創建用戶會話。我們無需編寫身份驗證提供程序(但我們應該有Facebook提供程序對其進行身份驗證,如FosFacebookBundle基本使用文檔中所述)。

我security.yml防火牆配置:

firewalls: 
    main: 
     pattern: ^/ 
     anonymous: true 
     form_login: 
      login_path:/
      check_path: _security_check 
      failure_path: login_failure 
      success_handler: Projectfolder.authentication.success_handler 
     fos_facebook: 
      login_path:/
      check_path: _security_check_facebook 
      provider: fos_facebook_provider 
      default_target_path:/

     logout: 
      path: /logout 
      target:/

我的routing.yml:

_security_check_facebook: 
    pattern: /facebook/login_check 
    defaults: { _controller: ProjectfolderUserBundle:Security:loginFb } 

_security_facebook_logout: 
    pattern: /facebook/logout 

注: _security_facebook_logout,我們不會在我們的應用程序中使用。註銷時,我們將只刪除應用程序用戶會話而不是facebook會話。我們可以在開發過程中使用此網址。

我調用了login_check而不是/ facebook/login_check。所以用戶會話沒有在我的應用程序中設置。現在它工作正常。