2011-10-17 37 views
3

兼容在使用新的javascrip SDK爲Facebook我收到以下錯誤試圖未捕獲的錯誤... FB.Auth.setAuthResponse只的OAuth2

(function() { 
var e = document.createElement('script'); e.async = true; 
e.src = document.location.protocol + 
    '//connect.facebook.net/en_US/all.js'; 
document.getElementById('fb-root').appendChild(e);}()); 
window.fbAsyncInit = function(e) { 
var curLoc = window.location; 
var channel = curLoc.protocol + "//" + curLoc.hostname + (curLoc.pathname).substr(0,(curLoc.pathname).lastIndexOf('/')) + "/channel.html"; 
FB.init({ appId: APP_ID, 
    status: true, 
    cookie: true, 
    xfbml: true, 
    channelUrl: channel, 
    oauth: true}); 
FB.getLoginStatus(isUserLoggedIn); 
FB.Canvas.setAutoGrow();} 

Uncaught Error: FB.Auth.setAuthResponse only compatible with OAuth2

時會是怎樣的這起因?我的應用程序處於SSL模式,我似乎無法弄清楚爲什麼會出現這種錯誤。

回答

4

這絕對是JS SDK包含的唯一地方嗎?檢查複製/粘貼像按鈕初始化代碼等

我見過這個錯誤發生時,人們包括JS的一些參數在URL中(即包括//connect.facebook.net/en_US/all .js#appid = x somewhere) - 這會覆蓋FB.init調用中的一些參數,並可能導致出現錯誤消息

1

在我的情況下,我不得不將oauth2設置爲true。錯誤來自另一個使用oauth2的facebook插件(我們都應該這樣做,所有fb文檔都應該反映這個,geez),並且與oauth1 fb會話衝突。