我有这个登录脚本
$('#getFbImg').click(function () {
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
var uid = response.authResponse.userID;
var accessToken = response.authResponse.accessToken;
getPermissions(uid);
getUserAlbums(uid);
getUserUploads(uid);
}
else if (response.status === 'not_authorized') {
// the user is logged in to Facebook,
// but has not authenticated your app
}
else {
// the user isn't logged in to Facebook.
FB.login(function(response) {
if (response.authResponse) {
var uid = response.authResponse.userID;
var accessToken = response.authResponse.accessToken;
getPermissions(uid);
getUserAlbums(uid);
getUserUploads(uid);
} else {
console.log('User cancelled login or did not fully authorize.');
}
}, {scope: 'public_profile,user_photos'});
}
});
});
要求用户登录才能继续。弹出窗口工作正常,登录正常,但权限似乎没有注册。 非常奇怪的部分是我的帐户(也是应用程序中的管理员)被要求获得权限,但其他所有帐户都没有。
这是带权限对象的图片
编辑:如果我向范围添加其他权限,例如用户生日,则会要求我的帐户接受新权限的访问权限,但不会要求其他帐户。
第二次编辑:我添加了一些其他管理员帐户以检查是否是因为我是管理员,并且我仍然遇到权限问题,应用程序无法访问其user_photos,但是它仍然提供给我的帐户
答案 0 :(得分:8)
我猜您使用的是Graph API v2.0,但尚未批准您的应用user_likes
和user_photos
权限:https://developers.facebook.com/docs/apps/changelog#v2_0_permissions < / p>
使用Facebook登录的应用程序需要的不仅仅是public_profile (默认),电子邮件和user_friends将需要Facebook审核 为了向人们请求这些权限。