尝试获取新上传的照片时,不支持的GET请求

时间:2013-09-10 15:38:36

标签: php facebook facebook-graph-api

我正在构建一个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还没有完成添加新内容。

思想?

2 个答案:

答案 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
            )
        );