Facebook API:将照片上传到墙上?

时间:2012-08-24 01:17:53

标签: php facebook facebook-graph-api

我正在尝试将照片上传到我的页面墙上(并且我已成功完成)但不是我想要的方式。

以下是我希望照片显示的方式:http://screencast.com/t/wnRFBh1xlf

但是,这是它实际显示的方式:http://screencast.com/t/4WblA7s8fyE

这是我用cURL上传照片的代码(或者更确切地说,链接到它)

$img_url = "url";
$page_id = "XXXXX";
$url = "https://graph.facebook.com/$page_id/feed";
$fields = array(
                        'access_token'=>urlencode("XXXXXXX"),
                        'message'=>urlencode("Far Cry 3!"),
                        'picture'=>$img_url
                );

所以,从我所知道的,我应该能够将图像存储在我的服务器上并发布图像的来源,但是当我这样做时,我只是得到了一个错误。

这是代码和错误......

“{”error“:{”message“:”(#100)源网址格式不正确“,”输入“:”OAuthException“,”code“:100}}”

$img_url = 'url';
$img = 'temp_image.jpg';
$contents = file_get_contents($img_url);
file_put_contents($img, $contents);
$path = realpath($img);
//echo $path;

//set POST variables
$page_id = "XXXXXX";
$url = "https://graph.facebook.com/$page_id/feed";
$fields = array(
                        'access_token'=>urlencode("XXXXXXX"),
                        'message'=>urlencode("Far Cry 3!"),
                        'source'=>"@".$path
                );

我不确定这里出了什么问题,并一直在寻找它 - 没有运气。

希望有人能给我一些关于我应该做什么的线索。

谢谢!

1 个答案:

答案 0 :(得分:5)

您要发布到那里的/feed连接,如果您想要更大的图片,则需要将照片实际上传到用户的一个相册(即/photos连接)