2016-03-30 25 views
-1

我創建Facebook應用程序,可以讓用戶的照片到我的網站如何檢索測試用戶的Facebook照片?

我創建的應用程序和設置的網站,並檢查權限user_photos

,我用在角色創建的測試用戶選項卡左窗格中的測試用戶

和我登錄該用戶和上傳的照片,並將其設置公共

,讓我的應用程序的訪問令牌

但是當我發送的請求如下:

https://graph.facebook.com/TestUserID/photos?access_token=#########|#########

的響應是: 「消息」: 「用戶訪問令牌需要請求此資源。」, 「類型」: 「OAuthException」, 「代碼」:102

所以我怎麼能解決這個問題?

+0

通過發送測試用戶通過登錄流獲取用戶訪問令牌。 (如果可能的話,請儘量在將來使用標點符號)無限句子無句號或逗號難以閱讀......) – CBroe

+0

你的意思是我不會使用應用程序訪問令牌嗎?但我會使用用戶訪問令牌 – user5740661

+0

_ 「__user__訪問令牌是必需的」_ - 它沒有比這更清晰。 – CBroe

回答

0

您正在使用App Access令牌進行請求。

要獲取用戶的私人數據(例如用戶的圖像),您必須實施Facebook Login Flow

這意味着,用戶將需要:

  1. 登錄與Facebook應用程序
  2. 授予您的應用程序的權限來訪問照片

您的用戶登錄後您將獲得用戶訪問令牌,您可以使用該令牌代表用戶向Facebook的API發送請求。

檢查上面的鏈接以獲取獲取訪問令牌的進一步說明。

執行登錄(在前端)最簡單的代碼將是:

window.fbAsyncInit = function() { 
    FB.init({ 
    appId  : '{your-app-id}', 
    cookie  : true, // enable cookies to allow the server to access 
         // the session 
    xfbml  : true, // parse social plugins on this page 
    version : 'v2.5' // use graph api version 2.5 
    }); 

    FB.login(function(response) { 
     console.log(response.authResponse.accessToken); // This will output the user access token 
    }, {scope: 'public_profile, user_photos'}); 
} 

請記住,包括Facebook的JS SDK到您的網頁。

+0

當我登錄測試用戶並獲取訪問令牌時,我嘗試使用圖形API資源管理器並選擇照片響應爲空,而測試用戶生成時我爲他設置了一些照片 – user5740661

+0

@ user5740661您可以使用[訪問令牌調試器](https: //developers.facebook.com/tools/debug/accesstoken/)你的訪問令牌在'Scopes'部分列出了'user_photos'? – jehna1

相關問題