2011-10-14 88 views
0

Im'試圖讓用戶在Facebook上進行身份驗證並顯示他可以管理的頁面列表。這工作得很好,但是一兩週後,facebook需要一個名爲「manage_pages」的權限。connect-js:請求登錄+ manage_pages權限

我試圖要求這個權限,並提出了下面的解決方案。它的工作原理,但問題是,我的第二個彈出窗口(代碼的第二部分)要求maange_pages權限被大多數瀏覽器阻止,因爲彈出窗口不是由用戶操作(如單擊按鈕)觸發的。

第一個彈出窗口(登錄到facebook)顯示正常。 我該如何解決這個問題,以便第二個彈出窗口不被阻止。也許有一種方法可以一步顯示請求manage_pages權限,而不是按照以下方式進行。

FB.init({ 
      appId : '...', 
      session : ..., // don't refetch the session when PHP already has it 
      status : true, // check login status 
      cookie : true, // enable cookies to allow the server to access the session 
      xfbml : true // parse XFBML 
     }); 


FB.Event.subscribe('auth.login', function() { 

      FB.login(function(response) { 
       if (response.session) { 
       if (response.perms) { 
        window.location.reload(); 
       } else { 
        window.location.reload(); 
       } 
       } else { 
        window.location.reload(); 
       } 
      }, {perms: 'manage_pages'}); 


     }); 

回答

1

我解決了它這樣的:

<fb:login-button scope="manage_pages"></fb:login-button> 

UPDATE:Facebook的改變燙髮到 「範圍」