Как хранить учетные данные Gmail API - PullRequest
0 голосов
/ 14 мая 2018

Я подключил Gmail API к проекту Django.У меня проблема с хранением учетных данных каждого пользователя.Как правильно их хранить, чтобы каждый пользователь мог войти в систему?Без сохранения он просто создает один файл для одного пользователя и все.Должен ли я создать базу данных?

Это мой файл "быстрого старта" от Google:

from __future__ import print_function
from googleapiclient.discovery import build
from httplib2 import Http
from oauth2client import file, client, tools
from django.contrib.auth.models import User


# user = User
# storage = (CredentialsModel, 'id', user, 'credential') As you see I tried it here but it didn't go well
# credential = storage
#
# storage.__add__(credential)

# Setup the Gmail API
SCOPES = 'https://www.googleapis.com/auth/gmail.readonly'
store = file.Storage('credentials.json')
creds = store.get()
if not creds or creds.invalid:
        flow = client.flow_from_clientsecrets('client_secret.json', SCOPES)
        creds = tools.run_flow(flow, store)
service = build('gmail', 'v1', http=creds.authorize(Http()))


def go():

    # Call the Gmail API
    results = service.users().labels().list(userId='me').execute()
    labels = results.get('labels', [])

    # if not labels:
    #     print('No labels found.')
    # else:
    #     print('Labels:')
    #     for label in labels:
    #         print(label['name'])

pass
...