Как иметь несколько областей с Календарем 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']