php - Unable to upload video to user's facebook account using Graph API -
i have created facebook app in lastly month.
i trying upload video php code, throws error (#353) must select video file upload. while tried upload same video facebook business relationship straight , gets uploaded properly.
i don't know wrong things exists, php code below
$api="/me/videos"; $uploaded_videos=$facebook->api($api); $video_file_path=$user_dir_abs_path."/newproject20.mov"; if(file_exists($video_file_path)) { echo "file exists..."; }else{ die("not exist"); } $ret_obj = $facebook->api('/me/videos', 'post', array( 'source' => '@' . $video_file_path, 'title' => "this test", 'description' => 'test9000', 'privacy' => json_encode(array('value' => 'everyone' )), ) ); echo '<pre>'. $ret_obj.'</pre>'; video have uploaded here
document refer code here
https://developers.facebook.com/blog/post/493/
https://developers.facebook.com/blog/post/608/
i have used next code well, getting same error..
$id=$facebook->getuser(); /* uid of connected user */ $api="/".$id."/videos"; echo "api -> $api"; /*$ret_obj = $facebook->api('/me/videos', 'post', array(*/ $ret_obj = $facebook->api($api, 'post', array( 'source' => '@' . $video_file_path, 'title' => "this test", 'description' => 'test9000', 'privacy' => json_encode(array('value' => 'everyone' )), ) ); echo '<pre>'. $ret_obj.'</pre>';
from comments, got know need upload/post video server facebook, instead form posting method specified in documentation.
i don't know much facebook-sdk, suggest utilize curl method instead.
<?php $app_id = "xxxxxxxxxxxxxx"; $app_secret = "xxxxxxxxxxxxxxxxxxxxxxx"; $my_url = "http://localhost/url_of_this_page.php"; $video_title = "video title here"; $video_desc = "video description here"; $code = $_request["code"]; if(empty($code)) { $dialog_url = "http://www.facebook.com/dialog/oauth?client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url) . "&scope=publish_stream"; echo("<script>top.location.href='" . $dialog_url . "'</script>"); } $token_url = "https://graph.facebook.com/oauth/access_token?client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url) . "&client_secret=" . $app_secret . "&code=" . $code; $access_token = file_get_contents($token_url); $post_url = "https://graph-video.facebook.com/me/videos?" . "title=" . $video_title. "&description=" . $video_desc . "&". $access_token; $ch = curl_init(); $data = array('name' => 'file', 'file' => '@'.realpath("ipad.mp4"));// utilize realpath curl_setopt($ch, curlopt_url, $post_url); curl_setopt($ch, curlopt_post, 1); curl_setopt($ch, curlopt_postfields, $data); $res = curl_exec($ch); if( $res === false ) { echo curl_error($ch); } curl_close($ch); ?> as response facebooks, you'l video id like:
{"id":"892161284142980"} php facebook facebook-graph-api video
No comments:
Post a Comment