Однопользовательский сценарий YouTube API с OAuth (загрузка видео)

StackOverflow https://stackoverflow.com/questions/5850287

Вопрос

Этот вопрос уже был задан, но никогда не ответил.

Я хочу написать несколько сценариев PHP, которые загрузили бы видео в мою собственную учетную запись YouTube. Я уже зарегистрировал приложение и имею ключ разработчика, ключ клиента и секрет клиента.

Мне не нужно разрешать пользователю загружать видео в свои учетные записи, поэтому мне не нужно проходить полный процесс OAuth; Особенно мне никого не нужно перенаправлять нигде: мне нужны только мои сценарии для аутентификации от моего имени (не от имени кого -либо другого).

Я знаю, что могу использовать аутентификацию ClientLogin, но я прочитал на сайте документации API YouTube, что она «не рекомендуется для новой разработки», и я боюсь, что это означает, что поддержка его будет прекращена в ближайшем будущем. Поэтому я бы предпочел использовать OAuth.

API Twitter, который также использует OAuth, предоставляет простой способ аутентификации с собственной учетной записью владельца приложения за один шаг, используя токен доступа, который вы можете найти на странице администрирования вашего приложения. Как я могу получить аналогичный токен для моего приложения на YouTube?

Спасибо м.

Это было полезно?

Решение

Попробуйте OAuth 2.0 для установленного приложения: http://code.google.com/apis/youtube/2.0/developers_guide_protocol.html#oauth2_installed_applications_flow

Во -первых, зарегистрируйте API, чтобы получить client_id.

Затем войдите в свою учетную запись Google, введите следующий URL, измените Client_ID с вашей. redirect_uri должен быть установлен на «Урн: IETF: WG: OAuth: 2.0: OOB».

https://accounts.google.com/o/oauth2/auth?client_id=1084945748469-eg34imk572gdhu83gj5p0an9fut6Urp5.apps.oboglecontent.com&rediRect_URINSPERPGOPERP. Code & Access_type = Offline

Затем вы разрешаете свое собственное приложение и получаете код авторизации.

Затем откройте терминал и введите (измените свой код, client_id и client_secret):

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" }

Вспомните represh_token, и каждый раз, когда вы запускаете свое приложение, вам нужно получить новый Access_token с помощью represh_token.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top