2016-11-22 3 views
1

После прочтения документов API Google. Я знаю, что если проект, который мы создаем, нуждается в доступе к личным данным, мы должны использовать oauth. Но вот моя ситуация. мы откроем бизнес-аккаунт в Youtube, и мы создадим проект для продвижения видео на нашу собственную учетную запись, нам не нужно использовать учетную запись другого пользователя. Можем ли мы использовать данные google youtube api без OAuth?Можем ли мы использовать данные google youtube api без OAuth

+0

С помощью я получил от @DalmTo, я создал проект, который использует Google клиент узла API для загрузки видео в GitHub. [GithubLink] (https://github.com/ruhaitsia/timeconsole). Пожалуйста, посмотрите, есть ли у вас проблемы с использованием google oauth2client. –

ответ

3

Существует два способа доступа к частным пользовательским данным с API Google.

  1. Пролив Oauth2. если у вас есть согласие на обращение к владельцу учетной записи, если у вас есть к нему доступ
  2. Service accounts, которые технически предварительно разрешены разработчиком.

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

Из-за отсутствия поддержки учетной записи службы вам придется использовать Oauth2. Я сделал это в прошлом.

Аутентификация вашего сценария один раз, используя какой-либо серверный язык. Сервер аутентификации вернет вам токен Refresh. Обновить токены можно в любой момент, чтобы получить новый токен доступа. Ленты доступа используются для доступа к API Google и действуют только в течение часа. Сохраните этот токен обновления где-нибудь. Затем вы сможете разрешить доступ к соответствующей учетной записи YouTube, когда захотите.

Примечание: Вам нужно будет посмотреть его. Обновление токенов может в редких случаях стать недействительным. Я рекомендую иметь готовый скрипт, который позволит вам повторно аутентифицировать приложение, снова сохраняя новый токен обновления. Его редкое, что это происходит, но может оказаться лучше всего быть предварительно спаренным.

OAuth Play землю

Часть точки Oauth является то, что он идентифицирует приложение для Google, хотя создание вашего проекта на консоли разработчика Google. Тем не менее, такие ограничения, как квота и доступ к которым управляются API. Если вы спам API, они будут знать и закрывать вас. (никогда не видел этого)

Когда вы запрашиваете доступ пользователя, он появляется с именем проекта на консоли разработчика Google. Это идентифицируется идентификатором клиента и клиентом для этого проекта на консоли разработчика Google. Когда я использую oauth playground, меня спрашивают: «Игровая площадка Google OAuth 2.0 хотела бы ...»

Итак, используя игровые площадки, вы используете идентификатор клиента Google и клиент, чтобы создать токен обновления для себя. Если N других разработчиков также делает это, квота для YouTube может быть использована в течение дня. Также с точки зрения безопасности вы теперь предоставляете этот проект доступ к вашим данным. Игнорируйте это на секунду, если Google вдруг решит удалить изменение идентификатора клиента или создать новый. Ваш токен обновления больше не будет работать. Что делать, если случайный dev X также использует его, и он начинает спамить все, и клиентский идентификатор закрывается (подумайте, что это произошло в прошлом году) вам придется ждать, пока Google не выведет новый идентификатор клиента для того, запрещено.

Google OAuth 2.0 Игровая площадка может хорошо выглядеть, но не для ежедневного использования ИМО ее хорошо для тестирования ничего больше. Создайте свой собственный проект и получите свой доступ к нему не просто, просто требуется язык программирования, который может обрабатывать http Post.

Моего учебник Google 3 legged oauth2 flow

+0

Я также заметил, что Google предоставляет инструмент под названием oauth playground. он может генерировать токен обновления и токен доступа, могу ли я использовать этот инструмент вместо того, чтобы писать собственный скрипт для извлечения токена обновления? Долговечный код обновления не будет истек, мы можем использовать его для создания токена доступа в любое время, если хотите, не так ли? Но учетная запись службы не может использоваться для данных Youtube. Api действительно затрудняет работу. Спасибо за помощь. DalmTo, действительно ценю это. –

+0

Это закончилось тем, что я написал текст извинения :) Я делаю это уже четыре года, я рад помочь. Могли бы просто сэкономить ваше время, указывая на вас в правильном направлении. – DaImTo

+1

@DalmTo, я смотрел это видео [Создание токена обновления для вызовов API YouTube с использованием игровой площадки OAuth] (https://www.youtube.com/watch?v=hfWe1gPCnzc&list=PLhBgTdAWkxeB-zCekGukAo0DzmpwBiua2&index=6) в youtube. Мы можем использовать наш собственный идентификатор клиента и секрет, чтобы генерировать токен обновления на игровой площадке oauth. Но да, я должен написать свой собственный код для создания токена обновления. Спасибо за подробное объяснение. –

Смежные вопросы