我遇到了导致此问题的原因。如果我以我的帐户登录,则下面的代码不会显示用户:100000920350966但如果我退出&回到我妻子的帐户,我现在可以看到用户个人资料图片。
登录我的FB帐户时出错: http://sphotos.xx.fbcdn.net/hphotos-snc6/230962_10150332269178009_784368008_9751025_7802946_n.jpg
我正在使用的代码是PHP SDK和这个用于获取图像的部分:
function randomUser() {
$query = mysql_query("SELECT the_facebook_id FROM users WHERE the_facebook_id != '$facebook_id' ORDER BY RAND() LIMIT 0,1");
$result = mysql_fetch_array($query);
mysql_close();
return $result; }
$theuser = randomuser();
$albums = $facebook->api('/' . $theuser[0] . '/albums');
foreach($albums['data'] as $album){
if ($album['type'] == 'profile'){
$photos = $facebook->api('/' . $album['id'] . '/photos');
$random_pic = $photos['data'][0]['source'];
}
}
echo "<br /><br />The User: " . $theuser[0] . "<br />";
echo "Photo Source: " . $photos['data'][0]['source'] . "<br />";
echo "THE PHOTO HEIGHT: " . $photos['data'][0]['height'] . "<br />";
echo "THE PHOTO WIDTH: " . $photos['data'][0]['width'] . "<br />";
老实说,我不知道在我的帐户中什么时候我看不到特定的个人资料照片,但在我妻子的照片中,我可以看到所有这些照片。非常感谢所有帮助!
干杯
答案 0 :(得分:0)
有趣的案例你已到达那里。
我不能告诉你什么是错的,但是我有一个猜测分为两个选项。 有问题的网址是针对静态内容的,因此内容不依赖于当前用户。 但是,该url是一个cdn,这意味着你获得的内容的副本(可能)与我得到的副本不同,这解释了当我看到图片时你是如何得到错误的对于同一个网址。
两个选项:
您所导向的cdn根本不可用,因此您询问的所有图片都会导致页面找不到错误。尝试ping sphotos.xx.fbcdn.net ,看看你得到了什么。
您被定向到的cdn没有您尝试获取的图像的副本,可能由于某种原因在文件传播到服务器时发生错误。
这只是一个猜测当然,无论如何我建议你file a bug report并让facebook团队查阅,但是他们可能需要一些时间来检查它/做些什么。