0

次のコードを使用してビデオを正常にアップロードしていますが、アップロード後に ID ページが表示されます。ビデオを正常にアップロードした後、ページを目的の場所にリダイレクトする方法を教えてください。

前もって感謝します。

$app_id = "YOUR_APP_ID";
$app_secret = "YOUR_APP_SECRET";
$my_url = "YOUR_POST_LOGIN_URL";
$video_title = "TITLE FOR THE VIDEO";
$video_desc = "DESCRIPTION FOR THE VIDEO";
$page_id = "YOUR_PAGE_ID";

$code = $_REQUEST["code"];

echo '<html><body>';

if(empty($code)) {
    // Get permission from the user to publish to their page.
    $dialog_url = "http://www.facebook.com/dialog/oauth?client_id="
        . $app_id . "&redirect_uri=" . urlencode($my_url)
        . "&scope=publish_stream,manage_pages";
    echo('<script>top.location.href="' . $dialog_url . '";</script>');
} else {

    $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);

    $accounts_url = "https://graph.facebook.com/me/accounts?" . $access_token;
    $response = file_get_contents($accounts_url);

    $resp_obj = json_decode($response,true);
    $accounts = $resp_obj['data'];

    foreach($accounts as $account) {
        if($account['id'] == $page_id) {
            $access_token = $account['access_token'];
            break;
        }
    }

    $post_url = "https://graph-video.facebook.com/" . $page_id . "/videos?"
        . "title=" . $video_title. "&description=" . $video_desc
        . "&access_token=". $access_token;

    echo "<form enctype="multipart/form-data" action=" '.$post_url.' "
        method="POST">";
    echo "Please choose a file:";
    echo "<input name="file" type="file">";
    echo "<input type="submit" value="Upload" />";
    echo "</form>";
}
4

1 に答える 1

0

訪問者のブラウザではなく、サーバー側で Facebook へのビデオのアップロードを行う必要があります。これにより、出力をキャッチして、訪問者のブラウザを適切な場所に送信できます。

ユーザーはまず自分のファイルをサーバーにアップロードします。次に、curl を使用してビデオを facebook に送信し、完了後にユーザーをリダイレクトできます。

:

  1. Facebook グラフ API ビデオ オブジェクト: http://developers.facebook.com/docs/reference/api/video/
  2. コマンドライン Curl の例: http://facebook.stackoverflow.com/questions/5227607/posting-an-embedded-video-link-using-the-facebook-graph-api
  3. Facebook PHP API の例: http://facebook.stackoverflow.com/questions/9018213/video-post-on-timeline-not-playing-inline
于 2012-07-20T11:27:57.747 に答える