通过Facebook图表发布照片不再有效

时间:2012-07-12 18:16:14

标签: php facebook-graph-api facebook-php-sdk

我正在尝试使用php-sdk发布照片 - 所有这些都成功运行了几个月,但突然间没有任何骰子。

其他功能仍然使用相同的代码库(即:将消息发布到墙上) - 它只是发布了我身边的照片。

try {
        $data = $facebook->api('/me/photos', 'post', $args);
      } catch (FacebookApiException $e) {
print_r($e);}

倾销:

  

FacebookApiException对象([result:protected] =>数组([error_code] => 3 [错误] =>数组([message] =>没有设置网址![type] => CurlException)) [message:protected] =>没有设置网址![string:private] => [code:protected] => 3 [file:protected] => /locationofmy/base_facebook.php [line:protected] =&gt ; 818 [trace:private] =>数组([0] =>数组[..............]

来自FB php-sdk第818行:

    if ($result === false) {
      $e = new FacebookApiException(array(
        'error_code' => curl_errno($ch),
        'error' => array(
        'message' => curl_error($ch),
        'type' => 'CurlException',
        ),
      ));
      curl_close($ch);
      throw $e;
    }
    curl_close($ch);
    return $result;
  }

这已经有很长一段时间了 - Facebook方面有什么变化吗?

编辑:php-sdk版本:3.1.1

编辑2:

$tag = array(
                'tag_uid' => 'acct_num',
                'x' => 0,
                'y' => 0
            );

        $tags[] = $tag;

        $args = array(
            'message' => $item_description,
            'image'   => '@' . realpath($temp_path . $tempFile),
            'tags'    => $tags,
            );

2 个答案:

答案 0 :(得分:0)

尝试将image更改为source。我相信这应该可以解决你的问题。

Facebook API需要source字段,但我没有看到image字段的任何内容。

您可能还必须传递实际文件内容而不是real_path(基于示例)。或者,也可以传递外部URL(基于我对文档的理解)。

来源:https://developers.facebook.com/docs/reference/api/photo/

示例:https://developers.facebook.com/blog/post/498/

答案 1 :(得分:0)

可能文件不存在,或文件系统无法再提供。你能确认“$ temp_path。$ tempFile” - 错误是没有URL,通常这意味着没有真实的图像路径。我怀疑,图像丢失和/或您的服务器已满,并且没有保存本地图像。 (是的,之前发生在我身上!)