使用FOSFacebookBundle我需要有普通登入形式(用戶名/密碼),它已經在/登錄存在一個單獨的URL通過Facebook做出登入一個單獨的網址,以及一些網址像/登錄,通過Facebook的通過FOSFacebookBundle oauth程序登錄。如何Symfony2的
現在我無法理解如何通過URL來觸發OAuth的Facebook的程序,如果我嘗試訪問它在「ACCESS_CONTROL」中列出的URL它才起作用。
在此先感謝!
@Matt,非常感謝你的解釋! 我試圖按照你的答案,但還是有一個問題,我沒有提到,我已經使用FOSUserBundle,
我security.yml
:
providers:
chain_provider:
providers: [fos_userbundle, fos_facebook]
fos_userbundle:
id: fos_user.user_manager
fos_facebook:
id: fos_facebook.auth
firewalls:
public:
pattern: ^/
fos_facebook:
app_url: ""
server_url: ""
login_path: /login
check_path: /login_check/facebook
provider: fos_userbundle
fos_userbundle:
login_path: /login
check_path: /login_check/form
provider: fos_userbundle
anonymous: true
logout: true`
所以,在這一點上它拋出一個異常:InvalidConfigurationException: Unrecognized options "fos_userbundle" under "security.firewalls.public"
,並且如果我在公共防火牆中將fos_userbundle更改爲form_login(但我應該這樣做嗎?),它會引發異常You must configure the check path to be handled by the firewall using form_login in your security firewall configuration.
我添加了一個後續我的回答一個簡單的例子包。 – Matt