无法使用 PHP 将视频上传到 Facebook 页面,但可以使用 curl
Cannot Upload video to Facebook page using PHP but can using curl
我正在尝试将视频上传到 Facebook 页面。我通过 POSTMAN 使用 curl 调用成功上传了视频。这是 POSTMAN 中使用的卷曲:
curl -X POST \
"https://graph-video.facebook.com/v8.0/<page_id>/videos" \
-F "access_token=<access_token>" \
-F "source=@/home/shubham/Downloads/big_buck_bunny_720p_1mb (1).mp4"
-F "title=Sample video"
(在 Postman 中,我 select 我要上传的文件。见附图)
但是,当我尝试使用 PHP 执行相同操作时,出现错误。我正在使用下面的代码来做到这一点。
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://graph-video.facebook.com/v7.0/<page_ID>/videos');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$post = array(
'access_token' => $access_token,
'source' => '@' .realpath($params['video_path']),
'title' => $params['video_title'],
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$result = curl_exec($ch);
其中:$params['video_path'] = '/home/shubham/Downloads/big_buck_bunny_720p_1mb (1).mp4';
$参数['video_title'] = 'Sample video upload from backend';
这是我从 Facebook 收到的错误:
{"error":{"message":"There was a problem uploading your video file.
Please try
again.","type":"OAuthException","code":390,"error_subcode":1363030,"is_transient":true,"error_user_title":"Video
Upload Timeout","error_user_msg":"Your video upload timed out before
it could be completed. This is probably because of a slow network
connection or because the video you're trying to upload is too large.
Please try again.","fbtrace_id":"A9sy8q1MUG5UJkgNI35dfZ2"}}
如果它在邮递员中工作,您可以通过单击请求右上角附近的代码从邮递员创建 php curl 命令
我正在尝试将视频上传到 Facebook 页面。我通过 POSTMAN 使用 curl 调用成功上传了视频。这是 POSTMAN 中使用的卷曲:
curl -X POST \
"https://graph-video.facebook.com/v8.0/<page_id>/videos" \
-F "access_token=<access_token>" \
-F "source=@/home/shubham/Downloads/big_buck_bunny_720p_1mb (1).mp4"
-F "title=Sample video"
(在 Postman 中,我 select 我要上传的文件。见附图)
但是,当我尝试使用 PHP 执行相同操作时,出现错误。我正在使用下面的代码来做到这一点。
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://graph-video.facebook.com/v7.0/<page_ID>/videos');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$post = array(
'access_token' => $access_token,
'source' => '@' .realpath($params['video_path']),
'title' => $params['video_title'],
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$result = curl_exec($ch);
其中:$params['video_path'] = '/home/shubham/Downloads/big_buck_bunny_720p_1mb (1).mp4'; $参数['video_title'] = 'Sample video upload from backend';
这是我从 Facebook 收到的错误:
{"error":{"message":"There was a problem uploading your video file. Please try again.","type":"OAuthException","code":390,"error_subcode":1363030,"is_transient":true,"error_user_title":"Video Upload Timeout","error_user_msg":"Your video upload timed out before it could be completed. This is probably because of a slow network connection or because the video you're trying to upload is too large. Please try again.","fbtrace_id":"A9sy8q1MUG5UJkgNI35dfZ2"}}
如果它在邮递员中工作,您可以通过单击请求右上角附近的代码从邮递员创建 php curl 命令