Как иметь несколько областей с Календарем Google + Google Drive

Я новичок в API Google и хочу знать, как я смогу получить доступ к 2 различным API в одних и тех же файлах.

я имею

SCOPES = 'https://www.googleapis.com/auth/calendar'

но я тоже хочу

SCOPES = 'https://www.googleapis.com/auth/drive.metadata.readonly'

быть доступным из того же файла. У кого-нибудь есть идеи, как это сделать?

Спасибо!

2 ответа

При аутентификации просто добавьте обе области. Пользователю будет предложено предоставить вам доступ к обоим.

SCOPES = 'https://www.googleapis.com/auth/drive.metadata.readonly https://www.googleapis.com/auth/calendar'

Возможно, вам придется поставить запятую между ними, я не уверен, что это зависит от библиотеки

Сейчас я не разработчик Python, однако большинство клиентских библиотек Google созданы одинаково. Предполагая, что вы используете это, вам нужно будет создать как службу календаря, так и службу накопителей. Вы создаете их обоих, используя те же учетные данные, которые вы получили сверху. Код разорван отсюда.

serviceDrive = discovery.build('drive', 'v3', http=http)
serviceCal = discovery.build('calendar', 'v3', http=http)

Когда вам нужен доступ к календарю, вы используете службу календаря, когда вам нужен доступ к диску, вы используете службу диска.

Добавьте области в список объектов.

Пример:

SCOPES = ['https://www.googleapis.com/auth/calendar',
          'https://www.googleapis.com/auth/drive.metadata.readonly']
Другие вопросы по тегам