我正在使用Facebook API,我在Roles->TestUsers
下创建了一个测试用户,其中包含publish_actios, user_photos
的使用权当我使用此用户登录并尝试获取照片或Feed时,它会返回空响应。 />
这是我的javascript代码。
FB.api('me/feed', function(response) {
console.log(response);
});
这样的返回响应Object {data: Array[0]}
我尝试使用相同的照片结果。但是,当我只尝试FB.api('me',function...
时,它正在使用该用户的良好返回名称和ID,但为什么这不适用于photos and feeds
。我在Facebook帐户上使用此测试用户上传了一些照片。
对不起,我是新手,对此并不了解。
更新
我调试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]}
为什么没有得到任何结果。这是测试用户,我没有申请任何审核权限。
因为首先我需要任何测试用户,我可以在那里测试我的应用程序并提交
评论我该怎么做。
更新
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 :(得分:0)
publish_actions
用于发帖,因为您需要user_posts
权限才能阅读Feed。
user_photos
对于获取照片是正确的,端点为/me/photos
。
调试令牌并确保其包含正确的权限:https://developers.facebook.com/tools/debug/accesstoken/