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

    액세스 토큰 받기

    이 샘플은 웹 앱에서 브라이트코브 OAuth API의 액세스 토큰을 검색하여 프록시를 통해 요청을 전송합니다.

    서문

    액세스 토큰을 얻는 것은 대부분이 요청을 인증하기 위해 액세스 토큰을 사용하기 때문에 Brightcove API와 관련된 대부분의 작업에서 중요한 작업입니다.

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

    이 샘플은 웹앱에서 액세스 토큰을 가져 오는 방법을 보여줍니다. OAuth API는 CORS가 지원되지 않고 서버 측에서 요청이 이루어져야하므로 앱은 정보를 프록시로 보낸 다음 api 요청을하고 응답을 클라이언트로 다시 보냅니다. 여기서 프록시는 PHP로 작성되었지만 모든 서버 측 언어가 가능합니다. 인터넷을 통해 앱에 POST 요청을 보낼 수만 있으면됩니다.

    자격 증명 가져오기

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

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

    API 사용 권한
    API 사용 권한

    CURL 또는 우편 배달부를 통해 자격 증명을 얻을 수도 있습니다.

    OAuth API에서 직접 자격 증명을 얻는 경우 다음을 참조하십시오. 클라이언트 자격 증명 요청을위한 API 작업다른 API 작업에 필요한 권한.

    액세스 토큰 앱 받기

    소스 코드

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

    샘플 앱

    펜보기 OAuth API 샘플 : 액세스 토큰 받기게시자 : Brightcove Learning Services ( 뿡 빵뀨 ) 의 위에 CodePen .

    코드펜 사용

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

    • 결과버튼을 클릭하여 플레이어의 실제 표시를 토글합니다.
    • HTML/CSS/JS버튼을 클릭하여 코드 유형 중 하나를 표시합니다.
    • 오른쪽 상단모서리에있는 CodePen에서 편집을클릭하여이 CodePen을 자신의 계정으로 포크하십시오.
    • GitHub 저장소에서이샘플과 관련된 모든 코드를 찾으십시오.

    프록시 코드

    이 페이지에서 자신의 버전을 샘플 응용 프로그램을 빌드하려면 자신의 프록시를 만들고 호스팅해야합니다. (브라이트코브 학습 서비스에서 사용하는 프록시는 브라이트코브 도메인의 요청만 허용합니다.) 출처 제한이없는 프록시 코드 버전은 다음과 같습니다.

        <?php
        /**
         * access-token-proxy.php-Brightcove RESTful API 용 프록시
         * 액세스 토큰을 가져와 반환
         * Accessing:
         *         (note you should *always* access the proxy via HTTPS)
         *     Method: 우편
         *
         * @post {string} client_id-요청에 대한 충분한 권한이있는 OAuth2 클라이언트 ID
         * @post {string} client_secret-요청에 대한 충분한 권한이있는 OAuth2 클라이언트 암호
         *
         * @returns {문자열} $ 응답 - OAuth API에서 수신 된 JSON 응답
         */
        
        
        //CORS 활성화 및 기타 헤더
        header("Access-Control-Allow-Origin: *");
        헤더 (“콘텐츠 유형: 응용 프로그램/json”);
        헤더 (“X-컨텐츠 유형 - 옵션: nosniff”);
        헤더 (“X-XSS 보호”);
        
        // 단일 자격 증명에이 프록시를 사용하는 경우
        // 아래의 클라이언트 ID와 시크릿을 전달하는 대신 하드 코딩 할 수 있습니다.
        
        $ 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 '오류가 발생했습니다';
        } else {
          echo $response;
        }
        
        ?>