2011-09-28 114 views
2

我將我的Facebook應用程序更改爲OAuth 2.0。現在,登錄窗口忽略用戶權限。fb:登錄按鈕忽略範圍?

新的登錄按鈕,代碼如下:

<fb:login-button show-faces="true" width="400" max-rows="2" scope="read_stream, publish_stream, email"></fb:login-button>

當我使用的perms代替scope它的工作原理。 我有oauth:在FB.init()中爲true。在應用程序設置中,oauth2處於活動狀態。

+0

我只注意到它,如果你集中展現,面孔虛假的作品!這太可笑了。 – sbaechler

回答

2

(一切我沒有和教訓是在努力能夠從第三方網站發佈到Facebook的時間軸。我不知道你的動機/目標。它可能不是我的一樣。)

我使用JS SDK與JavaScript命令,而不是xfbml標記。

我現在用的是JS SDK beta版:設置主機的connect.beta.facebook.net代替connect.facebook.net

我在FB.init()功能有oauth:true

我在developers.facebook.com上啓用了OAuth 2.0的應用程序設置。

這是我的FB.login():

FB.login(
    function(response) { 
    if (response.authResponse) { 
     // handle a successful login 
    } 
    }, 
    { 
    scope: 'publish_stream' // I need this for publishing to Timeline 
    } 
); 

有一件事我沒有調試這是檢查的FB._oath值。如果是undefined,則說明您有問題。如果是true,則可以繼續進行下一個挑戰。

所以大量的試驗和錯誤之後,我終於得到了FB._auth===true

+0

PS - 在您建議將此遷移到Stack Overflow之前,我曾是Facebook開發人員組中的一員。 – Teddy

+0

fb:登錄按鈕比它值得的更麻煩。 Teddy建議,用FB.logon更好地連接你自己的按鈕和點擊處理程序。 –