Support Kontakt Support | Systemstatus Systemstatus

Erhalte ein Zugangs-Token

In diesem Beispiel wird ein Zugriffstoken aus der Brightcove abgerufen OAuth API Senden Sie die Anfrage über eine Web-App über einen Proxy.

Einführung

Das Abrufen von Zugriffstoken ist für die meisten Arbeiten mit den Brightcove-APIs von entscheidender Bedeutung, da die meisten von ihnen Zugriffstoken zur Authentifizierung von Anforderungen verwenden.

Eine vollständige Erklärung der Zugriffstoken finden Sie unter Funktionsweise des Brightcove OAuth-Dienstes und Zugriffstoken erhalten.

In diesem Beispiel wird gezeigt, wie Sie ein Zugriffstoken aus einer Webanwendung erhalten. Weil der OAuth API ist nicht CORS-fähig und Anfragen müssen serverseitig gestellt werden, die App sendet Informationen an einen Proxy, der dann die API-Anfrage stellt und die Antwort zurück an den Client sendet. Der Proxy hier ist in PHP geschrieben, aber jede serverseitige Sprache reicht aus - Sie müssen lediglich eine POST-Anfrage über das Internet an die App senden können.

Anmeldeinformationen erhalten

Um eine zu bekommen client_id und client_secret, müssen Sie zur OAuth-Benutzeroberfläche gehen und diese App registrieren:

Diese wählen die Berechtigungen aus, die Sie für die zu verwendende API benötigen:

API-Berechtigungen
API-Berechtigungen

Sie können Ihre Anmeldeinformationen auch über CURL oder Postman erhalten - siehe:

Wenn Sie Anmeldeinformationen direkt von der OAuth API, Siehe API-Operationen für Clientanmeldungsanfragen für die Berechtigungen, die Sie für verschiedene API-Vorgänge benötigen.

Erhalte Zugriffstoken-App

Hier finden Sie den gesamten mit diesem Beispiel verbundenen Code GitHub-Repository.

Sieh den Stift OAuth API Beispiel: Holen Sie sich ein Access Token von Brightcove Learning Services (@ rcrooks1969) Auf CodePen.

Verwenden des CodePen

Hier sind einige Tipps, um den oben genannten CodePen effektiv zu nutzen:

  • Schalten Sie die tatsächliche Anzeige des um player durch Klicken auf Ergebnis klicken.
  • Klicken Sie auf die HTML / CSS / JS Schaltflächen, um einen der Codetypen anzuzeigen.
  • Eine detaillierte Auf CodePen bearbeiten in der oberen rechten Ecke, um diesen CodePen in Ihr eigenes Konto einzugeben.
  • Hier finden Sie den gesamten mit diesem Beispiel verbundenen Code GitHub-Repository.

Proxy-Code

Um Ihre eigene Version der Beispiel-App auf dieser Seite zu erstellen, müssen Sie Ihren eigenen Proxy erstellen und hosten. (Die von Brightcove Learning Services verwendeten Proxys akzeptieren nur Anforderungen von Brightcove-Domänen.) Eine Version des Proxy-Codes ohne die Ursprungsbeschränkungen wird unten angezeigt.

    <?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;
    }
    
    ?>
    

Seite zuletzt aktualisiert am 12. Juni 2020