我可以使用图形api将视频上传到facebook页面。但我无法上传自定义视频缩略图。我试图添加"图片"参数,但脸书忽略了这个参数。我可以通过点击视频帖子的"编辑"来更改facebook页面上的视频缩略图。所以,我认为也有一些方法可以从API做到这一点,但我就是找不到
这是我用来上传视频到facebook页面的代码:
$data = [
'title' => 'MY POST TITLE',
'description' => 'MY POST DESCRIPTION',
'source' => new CURLFile('video/my_video.mp4', 'video/mp4'),
'access_token' => FACEBOOK_PAGE_TOKEN,
];
// Curl Post Url
$post_url = 'https://graph-video.facebook.com/'.FACEBOOK_PAGE_ID.'/videos';
// CURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $post_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($ch);
curl_close($ch);
所以,我认为也有一些方法可以从API做到这一点,但我就是找不到
检查文档中列出的参数列表,https://developers.facebook.com/docs/graph-api/reference/page/videos#Creating
thumb
[image]:要上传并与视频相关联的视频缩略图原始数据。
使用Facebook PHP SDK,这个过程稍微简单一点:
<?php
use Facebook'FileUpload'FacebookFile;
$fb = new Facebook'Facebook([
'app_id' => 'YOUR_APP_ID',
'app_secret' => 'YOUR_APP_SECRET',
'default_graph_version' => 'v2.5',
]);
$data = [
'thumb' => new FacebookFile('PATH TO YOUR THUMB FILE'),
'source' => $fb->videoToUpload('PATH TO YOUR VIDEO FILE'),
'title' => 'YOUR VIDEO TITLE',
'description' => 'YOUR VIDEO DESCRIPTION!'
];
$response = $fb->post('/YOUR_PAGE_ID/videos', $data, YOUR_PAGE_TOKEN);
$post = $response->getGraphObject();
var_dump( $post );
只需记住在composer.json.