我创建了可以将用户照片添加到我的网站的Facebook应用
我创建了app并设置了网站并检查了user_photos的权限
我在测试用户标签
中使用了在角色左侧窗格中创建的测试用户我登录此用户并上传照片并将其设置为公开
并获取我的应用访问令牌
但是当我按如下方式发送请求时:
https://graph.facebook.com/TestUserID/photos?access_token=#########|#########
回应是: “message”:“请求此资源需要用户访问令牌。”, “type”:“OAuthException”, “代码”:102
那我怎么解决这个问题?
答案 0 :(得分:0)
您正在为请求使用App Access令牌。
要获取用户的私人数据(例如用户的图片),您必须实施Facebook Login Flow。
这意味着,用户需要:
用户登录后,您将获得用户访问令牌,您可以使用该功能代表用户向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包含在您的页面中。