2017-04-25 103 views
0

我在這裏使用 https://developers.facebook.com/tools/accesstoken/ 我的新創建的應用程序(2號線)爲什麼我的應用令牌處於非活動狀態?

var graph = new facebook.GraphAPI(accessToken); 
graph.getConnections('me', 'friends', print); 

function print(error, data) { 
    console.log(error ? error : data); 
} 

爲什麼它仍然拋出的錯誤下找到應用程序令牌?我錯過了什麼?

必須使用活動訪問令牌來查詢有關當前用戶的信息。

回答

0

你需要的是一個用戶令牌,而不是應用程序令牌。與使用App Token的任何用戶沒有任何關係,您需要授權具有user_friends權限的用戶獲得他的朋友。請注意,出於隱私的原因,您只會獲得授權您的應用的朋友user_friends

有關令牌的更多信息:

您可能會發現這篇文章的授權部分有所幫助:http://www.devils-heaven.com/facebook-javascript-sdk-login/

對於非受限制的頁面,你可以只需使用應用令牌即可:https://graph.facebook.com/page-id/videos?limit=20&acce‌​ss_token=myappid|mys‌​ecret

......當然你也可以使用虛名來代替ID。

+0

我認爲手動建立一個登錄流程最接近我的要求。其實我不需要用戶數據,也許我正在用錯誤的參數進行測試。我的用例是在沒有fb登錄的情況下從android應用程序的webview中的少數頁面獲取視頻。不是適用於非用戶特定數據的App令牌嗎?我可以硬編碼一個固定的訪問令牌嗎? – ishandutta2007

+0

就像這樣curl graph.facebook.com/v2.9/somechannelname/videos limit = 20&access_token = myappid | mysecret'但是在這裏我收到錯誤,說'{「error」:{「message」:「一個訪問令牌需要此資源。「,」type「:」OAuthException「,」code「:104,」fbtrace_id「:」A3 \/KBb7RFAb「}}' – ishandutta2007

+0

對於非受限頁面,您可以使用應用程序令牌。你不能使用「我」,你需要使用頁面ID。是「somechannelname」一頁嗎?我只是用另一個頁面測試它,它確實有效。 – luschn

相關問題