【问题标题】:Facebook: Fatal error: Uncaught CurlException: 26: failed creating formpost data thrownFacebook:致命错误:未捕获的 CurlException:26:创建表单发布数据失败抛出
【发布时间】:2012-03-24 11:04:10
【问题描述】:

我正在尝试将照片从我的服务器发布到 Facebook,但出现奇怪的错误:

致命错误:未捕获的 CurlException:26:在第 886 行的 base_facebook.php 中创建表单发布数据失败

应用代码在这里:

$facebook->setFileUploadSupport(true);
$file =  "/uploads/test_photo.jpg";
$post_data = array(
    "message" => "My photo caption",
    "source" => '@' . realpath($file)
);
$album_id = "10150639478245912";
$data = $facebook->api("/".$album_id."/photos", 'post', $post_data); 
print_r($data);

应用使用权限:

$loginUrl = $facebook->getLoginUrl(
  array('scope' => 'publish_stream, user_photos')
);

【问题讨论】:

  • 我不是 PHP 程序员,但它可能是 CURL 将图像从文件位置转换为多部分发布的字节流的地方。也许网络服务器/CURL 无权获取您指定的 $file 的数据字节?

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


【解决方案1】:

检查文件是否真的上传...有时文件 url 为空,因为没有上传任何内容,导致出现此错误。

【讨论】:

    【解决方案2】:

    而不是这个...

    $post_data = array(
      "message" => "My photo caption",
      "source" => '@' . realpath($file)
    );
    

    试试这个...

    $post_data = array(
      "message" => "My photo caption"
    ) 
    $post_data[basename($file)] = '@' . realpath($file);
    

    【讨论】:

    • API 会期望文件位于 source 变量中,服务器不会以这种方式确定上传文件的名称。
    猜你喜欢
    • 1970-01-01
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 2012-01-24
    • 2011-09-19
    • 2012-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多