Python の Google Calendar API の認証の有効期間について質問させてください。
expiredが設定される条件の有無、および、expiredの設定方法について教えて頂けないでしょうか?
私の環境で公式サイトのプログラムを実行したところcreds.refresh(Request())のロジックを通っていません。
printで値をを出力したところcreds.validがTrueでした。
credsの内容をそのまま出力したところexpiredの日付の記述もありませんでした。
以下はgoogle.auth.credentials moduleのURLです。
https://google-auth.readthedocs.io/en/latest/reference/google.auth.credentials.html
以下Python の Google Calender APIの公式のURLです。
https://developers.google.com/calendar/quickstart/python
公式のサンプルを一部抜粋
python
1if os.path.exists('token.pickle'): 2 with open('token.pickle', 'rb') as token: 3 creds = pickle.load(token) 4# If there are no (valid) credentials available, let the user log in. 5if not creds or not creds.valid: 6 if creds and creds.expired and creds.refresh_token: 7 creds.refresh(Request()) 8 else: 9 flow = InstalledAppFlow.from_client_secrets_file( 10 'credentials.json', SCOPES) 11 creds = flow.run_local_server(port=0) 12 # Save the credentials for the next run 13 with open('token.pickle', 'wb') as token: 14 pickle.dump(creds, token) 15 16print(creds.to_json()) 17service = build('calendar', 'v3', credentials=creds)
実行結果
{"token": "ya29.a0AfHxxxxxxx", "refresh_token": "1//0euR5aD1RP7Qxxxxx", "token_uri": "https://oauth2.googleapis.com/token", "client_id": "3783162xxxxxxx9m.apps.googleusercontent.com", "client_secret": "HE8IkGcZxxxxxxx", "scopes": ["https://www.googleapis.com/auth/calendar.readonly"]}
補足情報(FW/ツールのバージョンなど)
bash
1raspberry pi 3 2No LSB modules are available. 3Distributor ID: Raspbian 4Description: Raspbian GNU/Linux 10 (buster) 5Release: 10 6Codename: buster
bash
1macOS big sur version 11.2.1
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/14 20:58 編集