2016-11-21 220 views
0

我正在使用Facebook API,并使用publish_actios, user_photos创建了一个测试用户Roles->TestUsers当我使用此用户登录并尝试获取照片或源时,它会返回空响​​应。
这是我的javascript代码。在javascript中使用Facebook API获取测试用户的照片

 FB.api('me/feed', function(response) { 
      console.log(response); 
     }); 

这个返回响应像这样Object {data: Array[0]}我试着用相同的结果照片。但是,当我只尝试FB.api('me',function...它工作正常返回名称和此用户的ID,但为什么这不适用于photos and feeds。我使用Facebook上的这个测试用户上传了一些照片。 对不起,我是这方面的新手,对这方面的知识还不多。

UPDATE

我调试的accessToken得到这些结果。

Application ID 1017793531681977 : codeDeveloper 
User ID 104922836661684 
Issued Unknown 
Expires 1479805200 (in about an hour) 
Valid True 
Origin Unknown 
Scopes user_photos, user_friends, email, publish_actions, public_profile 

我还在测试用户帐户中添加了三张照片。我正在使用此JavaScript代码。

FB.api('me/photos',... 

它返回响应Object {data: Array[0]}这是为什么没有得到任何结果。这是一名测试用户,我没有申请任何审核权限。 因为首先我需要任何测试用户,我可以从哪里测试我的应用程序并提交 评论我该怎么做。

UPDATE

 function statusChangeCallback(response) { 
     if (response.status === 'connected') { 
      testAPI(); 
     } else if (response.status === 'not_authorized') { 

     } else { 

     } 
    } 

    function checkLoginState() { 
     FB.getLoginStatus(function(response) { 
      statusChangeCallback(response); 
     }); 
    } 

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

     FB.getLoginStatus(function(response) { 
      statusChangeCallback(response); 
     }); 

    }; 

    (function(d, s, id) { 
     var js, fjs = d.getElementsByTagName(s)[0]; 
     if (d.getElementById(id)) return; 
     js = d.createElement(s); js.id = id; 
     js.src = "//connect.facebook.net/en_US/sdk.js"; 
     fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 

    function testAPI() { 
     FB.api('me/photos', function(response) { 
      console.log(response); 
     }); 
    } 

在HTML身体

<fb:login-button scope="public_profile,email,user_photos,publish_actions" onlogin="checkLoginState();"> 

回答

0

publish_actions是用于发布,用于读取进你需要的user_posts许可。

user_photos对于获取照片是正确的,端点是/me/photos

调试令牌,并确保它包含正确的权限:https://developers.facebook.com/tools/debug/accesstoken/

+0

我'/ ME/photos'尝试过,但这个也不能正常工作。同样的结果'Object {data:Array [0]}' –

+0

然后没有照片或者你没有正确授权user_photos。你是否也尝试使用自己的帐户?您是否调试了访问令牌以确保它包含您需要的权限? – luschn

+0

您能再次看到更新 –