使用PHP将预定义图像上载到FB相册

时间:2011-11-29 15:25:52

标签: php facebook image post bytearray

我认为这是一个简单的要求。通过Facebook应用程序,允许用户将预定义图像(从应用程序内)上传到他们自己的相册。

从用户的计算机上传图像非常简单,在此处进行了描述,https://developers.facebook.com/blog/post/498/

我需要做的是将文件输入替换为预定义图像。我的第一个是通过服务器(PHP)控制POST,将图像转换为位数组。

    $byteArray = file_get_contents("../images/gate-banner.jpg");

    $data = array(
        "message" => "test",
        "source" => $byteArray
    );

    $postdata = http_build_query($data);

    $opts = array('http' =>
        array(
            'method'  => 'POST',
            'header'  => 'Content-type: multipart/form-data',
            'content' => $postdata
        )
    );

    $context  = stream_context_create($opts);
    print_r(file_get_contents($graph_url, false, $context));

但这会导致400 Bad Request。

我错过了什么?有没有更简单的方法来实现我的目标?

2 个答案:

答案 0 :(得分:1)

您可以尝试使用其他HTTP客户端类。请参阅此帖子,了解我提供的类似解决方案......

https://stackoverflow.com/a/8116708/278976

希望有帮助...

答案 1 :(得分:0)

显然,Facebook SDK预见到了我的问题并实施了解决方案!

http://daipratt.co.uk/facebook-api-upload-photo/