如何解决Facebook Graph API调用成功返回我的用户信息,但不返回我的相册?
| 问题是:这是我的大脑吗?还是Facebook令人讨厌的API? 意向: 返回我的Facebook相册信息和用户信息 结果:用于相册信息的空数据集,用于用户信息的完整结果{
\"data\": [
]
}
<?php
/****************************************************************************
Application settings
****************************************************************************/
$app_id = \'123456\';
$app_secret = \"4543163864\";
$my_url = \"http://www.myurl.com/app\";
$canvas_page = \'http://apps.facebook.com/my_canvas_page/\';
# authorize the user using oauth protocol (including required permissions)
$auth_url = \"http://www.facebook.com/dialog/oauth?client_id=\"
. $app_id . \"&redirect_uri=\" . urlencode($canvas_page).\"&scope=user_photos,friends_photos\";
$signed_request = $_REQUEST[\"signed_request\"];
list($encoded_sig,$payload) = explode(\'.\',$signed_request,2);
$fb_user_session = json_decode(base64_decode(strtr($payload,\'-_\',\'+/\')),true);
# if authorization failed,kick back to auth_url
if (empty($fb_user_session[\"user_id\"]))
{
echo(\"<script> top.location.href=\'\" . $auth_url . \"\'</script>\");
}
else
{
/****************************************************************************
User successfully logged in.
****************************************************************************/
$my_albums = \"https://graph.facebook.com/me/albums?access_token=\".$fb_user_session[\'oauth_token\'];
$my_info = \"https://graph.facebook.com/me?access_token=\".$fb_user_session[\'oauth_token\'];
echo \"<a href=\'$my_albums\'>my album information</a><br>\";
echo \"<a href=\'$my_info\'>my user information</a>\";
### ignore this,just testing iframe call ###
exit;
echo(\"<script> top.location.href=\'\" . $my_albums . \"\'</script>\");
}
?>
附加信息:
登录后,可以从http://developers.facebook.com/docs/reference/api/user/测试一个“相册”请求!它成功返回了我所有的相册信息。但是我注意到测试URL中的授权令牌与我检索到的应用程序令牌($ fb_user_session [\'oauth_token \'])不同。这里发生了什么?
我是否缺少某种授权步骤?为什么我的应用程序会使用完全相同的调用和令牌来返回相册的空白数据,而Facebook的测试调用会返回完整的数据集?如果有人能一劳永逸地解决这个问题,那就太好了。
有任何想法吗?
解决方法
尝试将\“ user_photo_video_tags \”添加到请求的范围列表中。另外,请尝试调用权限api调用,以通过检查\“ user_photos \”权限来确保您有权访问用户的照片。
网址是:https://graph.facebook.com/me/permissions?access_token = ...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。