2011-09-28 89 views
0

我正在使用fos_facebook捆綁集成facebook登錄系統與我的web應用程序。我得到以下錯誤。Symfony 2和Facebook登錄錯誤

「Facebook的用戶無法從會話中檢索」

有沒有人遇到過這個問題嗎?任何人都可以成功整合facebook與symfony?請提供您的配置和userInterface類。

+0

爲什麼不給我們提供你的配置和代碼示例? – dmirkitanov

+0

這個問題解決了,請檢查:https://github.com/FriendsOfSymfony/FOSFacebookBundle/issues/59 – adityap

回答

2

您必須給瀏覽器一點時間來處理Facebook cookie。

<script> 
    function goLogIn(){ 
     window.location = "{{ path('_security_check') }}"; 
    } 

    function onFbInit() { 
     if (typeof(FB) != 'undefined' && FB != null) { 
      FB.Event.subscribe('auth.statusChange', function(response) { 
       setTimeout(goLogIn, 500); 
      }); 
     } 
    } 
</script> 

這是來自FOSFacebookBundle文檔的剪輯。在描述過程的地方:)

+0

通常,如果你給某種東西的任意延遲,有一個潛在的問題(重點*通常* )。回調是一個更好的方法。 JavaScript充滿了回調功能。 – Lix

+0

有任意延遲的另一件事是,因爲在這種情況下執行代碼的機器的規格基本上是未知的(你只知道它有能力解析JS),那麼這半秒的延遲可能是不夠的!即使**更糟**它可能**太多**! :) – Lix

+0

@Lix - 我同意你的*通常*評論,但我不確定FB界面是否支持回調。基於我所知道的,我擔心這可能是最好的解決方案。 –