2011-05-01 2 views
11

이 질문에 대한 답변은 아직 받았으나 답변하지 않았습니다.OAuth (업로드 동영상)가 포함 된 Youtube API 단일 사용자 시나리오

내 YouTube 계정에 비디오를 업로드하는 PHP 스크립트를 작성하고 싶습니다. 이미 응용 프로그램을 등록하고 개발자 키, 고객 키 및 고객 비밀을 가지고 있습니다.

사용자가 자신의 계정에 동영상을 업로드 할 필요가 없으므로 완전한 OAuth 과정을 거칠 필요가 없습니다. 특히 아무에게도 리다이렉트 할 필요가 없습니다. 스크립트를 내 대신 (다른 사람을 대신해서가 아니라) 인증하기 만하면됩니다.

ClientLogin 인증을 사용할 수는 있지만 YouTube API 문서 사이트에서 "새로운 개발에는 권장하지 않습니다"라고 읽었습니다. 가까운 시일 내에 지원이 중단 될 것입니다. 미래. 따라서 OAuth를 사용하는 것을 선호합니다.

OAuth도 사용하는 Twitter API는 응용 프로그램의 관리 페이지에서 찾을 수있는 액세스 토큰을 사용하여 응용 프로그램의 소유자의 계정으로 간단하게 인증하는 간단한 방법을 제공합니다. 내 유튜브 응용 프로그램에 대해 비슷한 토큰을 얻으려면 어떻게해야합니까?

감사합니다. m. 설치된 응용 프로그램에 대한

답변

14

시도의 OAuth는 2.0 : http://code.google.com/apis/youtube/2.0/developers_guide_protocol.html#OAuth2_Installed_Applications_Flow

첫째는 CLIENT_ID을 얻을 수있는 API를 등록합니다.

그런 다음 Google 계정에 로그인하고 다음 URL을 입력 한 다음 client_id를 변경하십시오. redirect_uri는 "urn : ietf : wg : oauth : 2.0 : oob"으로 설정해야합니다.

https://accounts.google.com/o/oauth2/auth?client_id=1084945748469-eg34imk572gdhu83gj5p0an9fut6urp5.apps.googleusercontent.com&redirect_uri=urn:ietf:wg:oauth:2.0:oob&scope=https://gdata.youtube.com&response_type=code&access_type=offline

그럼 당신은 자신의 응용 프로그램을 인증하고 인증 코드를 얻을.

curl https://accounts.google.com/o/oauth2/token -d "code=4/ux5gNj-_mIu4DOD_gNZdjX9EtOFf&client_id=1084945748469-eg34imk572gdhu83gj5p0an9fut6urp5.apps.googleusercontent.com&client_secret=hDBmMRhz7eJRsM9Z2q1oFBSe&redirect_uri=urn:ietf:wg:oauth:2.0:oob&grant_type=authorization_code" 

당신은 얻을 것이다 응답과 같은 :

{ "access_token" : "ya29.AHES6ZTtm7SuokEB-RGtbBty9IIlNiP9-eNMMQKtXdMP3sfjL1Fc", "token_type" : "Bearer", "expires_in" : 3600, "refresh_token" : "1/HKSmLFXzqP0leUihZp2xUt3-5wkU7Gmu2Os_eBnzw74" }

가 refresh_token도 기억하고, 때마다

그런 다음 터미널 및 유형 (코드, CLIENT_ID을 변경하고 client_secret)를 엽니 다 응용 프로그램을 실행하면 refresh_token을 사용하여 새 access_token을 가져와야합니다.

+3

1) 코드는 한 번만 사용할 수 있다는 점을 제외하고는 매력처럼 작동했습니다. 2) 코드는 10 분 동안 만 유효합니다 (너무 서두름). 3) [여기] (https://developers.google.com/youtube/v3/guides/moving_to_oauth)에 설명 된대로 추가 매개 변수 ** approval_prompt **를 설정해야했습니다. 'YouTube API에 오래 액세스해야하는 경우 access_type 매개 변수를 오프라인으로 설정하고 approval_prompt 매개 변수를 초기 승인 요청 또는 클라이언트 구성에 강제 설정하여 웹 응용 프로그램을 검색 할 수 있습니다 .' –

관련 문제