我正在尝试使用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,
);
答案 0 :(得分:0)
尝试将image
更改为source
。我相信这应该可以解决你的问题。
Facebook API需要source
字段,但我没有看到image
字段的任何内容。
您可能还必须传递实际文件内容而不是real_path(基于示例)。或者,也可以传递外部URL(基于我对文档的理解)。
来源:https://developers.facebook.com/docs/reference/api/photo/
答案 1 :(得分:0)
可能文件不存在,或文件系统无法再提供。你能确认“$ temp_path。$ tempFile” - 错误是没有URL,通常这意味着没有真实的图像路径。我怀疑,图像丢失和/或您的服务器已满,并且没有保存本地图像。 (是的,之前发生在我身上!)