지원 지원 문의 | 시스템 상태 시스템 상태
페이지 내용

    액세스 토큰 가져 오기

    이 샘플은 Brightcove에서 액세스 토큰을 검색합니다. OAuth API 웹 응용 프로그램에서 프록시를 통해 요청을 보냅니다.

    소개

    대부분의 액세스 토큰은 액세스 토큰을 사용하여 요청을 인증하므로 액세스 토큰을 얻는 것은 Brightcove API를 사용하는 대부분의 작업에서 중요한 작업입니다.

    액세스 토큰에 대한 자세한 설명은 다음을 참조하십시오. Brightcove OAuth 서비스 작동 방식액세스 토큰 얻기.

    이 샘플은 웹 앱에서 액세스 토큰을 얻는 방법을 보여줍니다. 왜냐하면 OAuth API CORS를 사용할 수없고 서버 측에서 요청을해야하는 경우 앱은 프록시에 정보를 보내고 프록시는 API 요청을 만들어 클라이언트에 응답을 보냅니다. 여기에있는 프록시는 PHP로 작성되었지만 서버 측 언어로는 가능합니다. 인터넷을 통해 앱에 POST 요청을 보내면됩니다.

    자격증 명 얻기

    를 얻으려면 client_idclient_secretOAuth UI로 이동하여이 앱을 등록해야합니다.

    사용하려는 API에 필요한 권한을 선택합니다.

    API 권한
    API 권한

    CURL 또는 Postman을 통해 자격 증명을 얻을 수도 있습니다. - 참조 :

    직접 자격 증명을 받고 있다면 OAuth API참조 클라이언트 자격 증명 요청에 대한 API 작업 다양한 API 작업에 필요한 권한

    액세스 토큰 앱 가져 오기

    소스 코드

    이 샘플과 관련된 모든 코드를 찾으십시오. GitHub 저장소.

    샘플 앱

    펜보기 OAuth API 샘플 : 액세스 토큰 가져 오기 Brightcove 학습 서비스 제공 (@rcrooks1969)에 코드 펜.

    CodePen 사용

    위의 CodePen을 효과적으로 사용하기위한 몇 가지 팁이 있습니다.

    • 의 실제 표시를 토글 player 클릭하여 결과 버튼을 클릭합니다.
    • 클릭 HTML / CSS / JS 버튼을 사용하여 하나의 코드 유형을 표시합니다.
    • Click 하십시요. 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;
        }
        
        ?>
        

    10 년 2020 월 XNUMX 일에 마지막으로 업데이트 된 페이지