创建一个facebook活动并发布封面照片



我正在通过php sdk使用

创建一个facebook事件
$param = array(
        'name' => $name,
        'start_time' => $ate,
        'description' => $description,
        'picture' => $photo            
    );
$facebook->api('/me/events', 'POST', $param);

是否可以为正在创建的事件设置封面照片?如果不是,我可以设置它吗?

文档说封面字段需要一个带照片的id。如果我还没有上传照片,它没有id,我该怎么做?

我是否将照片上传到发出"创建事件"动作的用户的facebook帐户,以这种方式获得照片id,然后将其发布到事件?

如果我不想把它上传到用户配置文件中怎么办?

谢谢

代码示例,创建事件时上传封面照片:

<?php
//extract data from the post
extract($_POST);
//set POST variables
$url = 'https://graph.facebook.com/me/events';

$data["file"] = "@pika.jpg;type=image/jpeg";
$data["access_token"] = "PUT_USER_ACCESS_TOKEN_HERE";
$data["name"] = "testing";
$data["start_time"] = "2013-04-25";
$data["end_time"] = "2013-04-25";
$data["description"] = "coffee";
$data["location"] = "oldtown";
$data["privacy_type"] = "FRIENDS";
//make the POST request
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$result = curl_exec($curl);
 //curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "Content-Type: multipart/form-data; boundary=--$srand");
//close connection
curl_close($ch);
?>

代码示例,事件创建后,您还可以通过上传新照片来替换封面照片:

<?php
//extract data from the post
extract($_POST);
//set POST variables
$url = 'https://graph.facebook.com/PUT_EVENT_ID_HERE';

$data["file"] = "@pikachu.jpg;type=image/jpeg";
$data["access_token"] = "PUT_USER_ACCESS_TOKEN_HERE";
//make the POST request
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$result = curl_exec($curl);
//close connection
curl_close($ch);
?>

上传事件的封面照片-首先,您不能在创建事件时这样做。您首先必须创建一个事件,因此您将获得event_id。使用event_id,拨打电话:

POST /{event-id} with param: cover_url

到目前为止,这是唯一的方法(我已经测试过)。本文档中描述的方法目前无法工作,这被报告为一个bug。您可以订阅此错误以获取有关该错误的任何更新。

代码:

$param = array(
    'cover_url' => '{image-link}'
);
$facebook->api('/{event-id}', 'POST', $param);

最新更新