我正在构建一个Facebook应用程序,用户可以选择上传到该用户的App专辑的图像。一切正常,图片上传并张贴在用户的墙上等没有任何问题。
但是,在上传后我尝试使用我从上传中得到的ID获取新上传的照片,这就是我遇到问题的地方。 FB只是告诉我“不支持的GET请求”。
以下是我的相关代码:
<?php
# Works perfectly fine
$response = $fb->api('/me/photos', 'post', array(
'message' => 'Some message',
'source' => '@' . realpath('path/to/img.jpg')
));
# "Unsupported GET request"... :/ (SOMETIMES ??)
$photo = $fb->api('/' . $response['id']);
所有的身份验证等显然都有效(否则我根本无法上传)只是提取不起作用的照片。
我正在使用PHP和JS SDK:我同时尝试过这两种方法。我从JS开始,它从未奏效。但是,PHP调用有时。
有谁知道我做错了什么?
编辑:好的,所以我跳过了获取新创建的照片,而只是使用从上传返回的ID构建了一个URL(我所追求的只是照片对象的链接属性 - 我认为这是更多的未来证明使用而不是构建自己的)。 然而,即使现在我重定向到http://www.facebook.com/photo.php?fbid=ID_GOES_HERE&makeprofile=1 有时(再次:P)Facebook会告诉我“内容不可用”。然而,在Ctrl + R之后,它是。在我看来,即使我的$fb->api('/me/photos', 'post'...
- 调用已经返回了ID,FB还没有完成添加新内容。
思想?
答案 0 :(得分:0)
嗯,非常奇怪,因为同样的事情发生在我身上。
工作正常,12小时前,完全失效。我不能再发帖了,而我已经有了返回ID。
当我向图表api询问返回ID时,我得到了这个:
{
"error": {
"message": "Unsupported get request.",
"type": "GraphMethodException",
"code": 100
}
}
只是发现只有在我发布图片时才会发生这种情况。有了链接或状态,一切都很好。
FB api有问题吗?
答案 1 :(得分:0)
对我而言,这只是因为发布照片的方法似乎有所改变: https://developers.facebook.com/docs/reference/api/page/#photos
$facebook->setFileUploadSupport(true);
$picture = "@".realpath('path/to/the/photo');
$result = $facebook->api(
'/fb_id_of_the_page/photos/',
'post',
array('access_token' => 'access_token',
'message' => 'message',
'source' => $picture
)
);