assistance Contacter le support | Étatétat du système du système
Contenu de la page

    Obtenir un jeton d'accès

    Cet exemple récupère un jeton d'accès de l'API Brightcove OAuth à partir d'une application Web, envoyant la requête via un proxy.

    Introduction

    Obtenir des jetons d'accès est une opération cruciale pour la plupart des travaux avec les API Brightcove, car la majorité d'entre eux utilisent des jetons d'accès pour authentifier les requêtes.

    Pour une explication complète des jetons d'accès, consultez le fonctionnement du service Brightcove OAuth et Obtenir les jetons d'accès.

    Cet exemple vous montre comment obtenir un jeton d'accès à partir d'une application Web. Étant donné que l'API OAuth n'est pas compatible CORS et que les requêtes doivent être faites à partir du côté serveur, l'application envoie des informations à un proxy, qui effectue ensuite la requête api et renvoie la réponse au client. Le proxy ici est écrit en PHP, mais n'importe quel langage côté serveur le fera - vous avez juste besoin d'être en mesure d'envoyer une requête POST à l'application sur Internet.

    Obtenir des informations

    Pour obtenir un client_id et client_secret , vous devez aller à l'interface utilisateur OAuth et enregistrer cette application :

    Ceux-ci choisissent les autorisations dont vous aurez besoin pour l'API que vous allez utiliser :

    Autorisations API
    Autorisations API

    Vous pouvez également obtenir vos informations d'identification via CURL ou Postman - voir :

    Si vous obtenez des informations d'identification directement à partir de l'API OAuth, reportez-vous à la section Opérations API pour les demandes d'informations d'identification client pour connaître les autorisations dont vous avez besoin pour différentes opérations d'API.

    Obtenir l'application jeton d'accès

    Code source

    Trouvez tout le code associé à cet exemple dans ce dépôt GitHub.

    Exemple d'application

    Voir l' exemple d'API Pen OAuth : Obtenez un jeton d'accès par Brightcove Learning Services (@rcrooks1969 ) sur CodePen.

    Utilisation du CodePen

    Voici quelques conseils pour utiliser efficacement le CodePen ci-dessus :

    • Basculez l'affichage réel du joueur en cliquant sur le bouton Résultat .
    • Cliquez sur les boutons HTML/CSS/JS pour afficher L'UN des types de code.
    • Cliquez sur Modifier sur CodePen dans le coin supérieur droit pour incorporer ce CodePen dans votre propre compte.
    • Trouvez tout le code associé à cet exemple dans ce dépôt GitHub.

    Code proxy

    Afin de construire votre propre version de l'exemple d'application sur cette page, vous devez créer et héberger votre propre proxy. (Les proxy utilisés par Brightcove Learning Services acceptent uniquement les demandes des domaines Brightcove.) Une version du code proxy sans les restrictions d'origine est affichée ci-dessous.

        <?php
        /**
         * access-token-proxy.php - proxy pour les API RESTful Brightcove
         * obtient un jeton d'accès et le renvoie
         * Accès :
         * (notez que vous devriez *toujours* accéder au proxy via HTTPS)
         * Méthode : POSTE
         *
         * @post {string} client_id - ID client OAuth2 avec des autorisations suffisantes pour la requête
         * @post {string} client_secret - secret client OAuth2 avec des autorisations suffisantes pour la requête
         *
         * @returns {string} $response - Réponse JSON reçue de l'API OAuth
         */
        
        
        //Activation CORS et autres en-têtes
        en-tête (« Access-Control-Allow-Origin :* ») ;
        en-tête (« Content-type : application/json ») ;
        (« X-Content-Type-Options : nosniff ») ;
        en-tête (« X-XSS-protection ») ;
        
        //notez que si vous utilisez ce proxy pour une seule identification
        //vous pouvez simplement coder en dur l'identifiant client et le secret ci-dessous au lieu de les transmettre
        
        $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) ;
        
        //Vérification des erreurs
        if ($response === FALSE) {
            die (curl_error ($ch)) ;
            echo 'Une erreur s'est produite » ;
        } else {
          echo $ réponse ;
        }
        
        ?>