サポート サポート問い合わせ先 | システムステータス システムステータス

アクセストークンを取得する

このサンプルは、Brightcoveからアクセストークンを取得します OAuth API Webアプリケーションから、プロキシを介してリクエストを送信する

概要

アクセストークンの取得は、Brightcove APIのほとんどの作業にとって重要な操作です。それらの大部分は、リクエストを認証するためにアクセストークンを使用するためです。

アクセストークンの詳細については、 Brightcove OAuthサービスの仕組みアクセストークンの取得.

このサンプルは、Webアプリケーションからアクセストークンを取得する方法を示しています。 なぜなら OAuth API CORS対応ではなく、サーバー側からのリクエストが必要な場合、アプリはプロキシに情報を送信し、プロキシは情報を送信してクライアントに返信します。 ここのプロキシはPHPで書かれていますが、サーバーサイドの言語であればどんなものでも構いません。インターネット経由でアプリにPOSTリクエストを送るだけでよいのです。

OAuth 資格情報

取得するには client_idclient_secretOAuthのUIにアクセスしてこのアプリを登録する必要があります:

これらは、使用するAPIに必要な権限を選択します。

API権限
API権限

CURL または Postman を介して資格情報を取得することもできます - 以下を参照してください:

あなたが直接資格情報を取得している場合 OAuth APIを参照してください クライアント資格情報要求のAPI操作 さまざまなAPI操作に必要な権限が必要です。

アクセストークンアプリを入手する

このサンプルに関連付けられているすべてのコードをこれで見つけます GitHubリポジトリ.

ペンを見る OAuth API サンプル:アクセストークンを取得する ブライトコーブラーニングサービス(@rcrooks1969)上 コードペン.

CodePenの使用

上記のCodePenを効果的に使用するためのヒントをいくつか紹介します。

  • プレーヤーの実際の表示を切り替えるには、 Result ボタン。
  • ストリーミングを停止する場合は上部の HTML / CSS / JS ボタンを押して、1つのコードタイプを表示します。
  • ナビゲーションヘッダーの CodePenで編集 右上隅にあるこのCodePenを自分のアカウントにフォークします。
  • このサンプルに関連付けられているすべてのコードをこれで見つけます GitHubリポジトリ.

プロキシコード

このページのサンプルアプリで独自のバージョンを構築するには、独自のプロキシを作成してホストする必要があります。 (Brightcove Learning Servicesが使用するプロキシは、Brightcoveドメインからの要求のみを受け入れます。)以下は、オリジン制限のないバージョンのプロキシコードです。

    <?php
    /**
     * access-token-proxy.php - proxy for Brightcove RESTful APIs
     * gets an access token and returns it
     * Accessing:
     *         (note you should *always* access the proxy via HTTPS)
     *     Method: POST
     *
     * @post {string} client_id - OAuth2 client id with sufficient permissions for the request
     * @post {string} client_secret - OAuth2 client secret with sufficient permissions for the request
     *
     * @returns {string} $response - JSON response received from the OAuth API
     */
    
    
    // CORS enablement and other headers
    header("Access-Control-Allow-Origin: *");
    header("Content-type: application/json");
    header("X-Content-Type-Options: nosniff");
    header("X-XSS-Protection");
    
    // note that if you are using this proxy for a single credential
    // you can just hardcode the client id and secret below instead of passing them
    
    $client_id     = $_POST["client_id"];
    $client_secret = $_POST["client_secret"];
    $auth_string   = "{$client_id}:{$client_secret}";
    $request       = "https://oauth.brightcove.com/v4/access_token?grant_type=client_credentials";
    $ch            = curl_init($request);
    curl_setopt_array($ch, array(
            CURLOPT_POST           => TRUE,
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_SSL_VERIFYPEER => FALSE,
            CURLOPT_USERPWD        => $auth_string,
            CURLOPT_HTTPHEADER     => array(
                'Content-type: application/x-www-form-urlencoded',
            )
        ));
    $response = curl_exec($ch);
    curl_close($ch);
    
    // Check for errors
    if ($response === FALSE) {
        die(curl_error($ch));
        echo 'An error occurred';
    } else {
      echo $response;
    }
    
    ?>
    

ページの最終更新日:12年2020月XNUMX日