【问题标题】:How to post an image to a facebook page from a PHP app?如何从 PHP 应用程序将图像发布到 Facebook 页面?
【发布时间】:2012-11-14 17:57:14
【问题描述】:

我正在尝试从 PHP 应用程序将图像发布到 Facebook 页面。我检查了这个站点中的许多资源、文档、一些演示代码和几个问题,但无法完成一个工作应用程序。

这是我的代码:

$facebook = new Facebook(array(
  'appId'  => $appId,
  'secret' => $appSecret
));

$fbuser = $facebook->getUser();

$facebook->setFileUploadSupport(true);

$post_url = '/443513955707619/photos';

$msg_body = array(
                'source' => '@/www/www.gbart.hu/public_html/facebook/megosztos_app/img/winner/winner_'.(int)$round[0].'.jpg',
                //'image' => 'http://www.gbart.hu/facebook/megosztos_app/img/winner/winner_'.(int)$round[0].'.jpg',
                'message' => 'http://www.facebook.com/WangMesterKinaiKonyhaja/app_322145727882829',
                'access_token' => $access_token
                );
try {
    $postResult = $facebook->api($post_url, 'post', $msg_body);
}
catch (FacebookApiException $e) {
    echo $e->getMessage();
}

以下是我对该应用的权限: $fbPermissions = 'email, publish_actions, publish_stream, photo_upload, manage_pages';

我有需要的appID、app_secret、access_token参数(应用的其他部分都在工作)。

我收到了一些不同的错误消息,例如无效的专辑 ID 或无效的访问令牌。我解决了这些,现在没有任何错误消息,但照片没有出现在任何地方。

在此代码的先前版本中,我尝试将图像发布到页面墙而不是相册,但这产生了一个奇怪的结果:将图像发布到我的用户个人资料的墙上。

【问题讨论】:

    标签: php facebook


    【解决方案1】:

    尝试发布类似下面的内容

    $url =    "https://graph.facebook.com/443513955707619/photos?access_token=".$token."&message=hello&url=http://imagetopost.com/hi.jpg&method=post";
    $response = file_get_contents($url);
    

    【讨论】:

    • 我试过了,但相册中没有出现新图像。响应包含以下内容:{"id":"443775505681464"}
    • 这个响应表示照片上传成功
    猜你喜欢
    • 2011-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多