用户获得许可后如何获取电子邮件地址以及日历的凭据 注意:参考:

在用户允许后如何获取所有者的电子邮件地址

  SCOPES = ['https://www.googleapis.com/auth/calendar']  
  flow = InstalledAppFlow.from_client_secrets_file(credentials.json,SCOPES)
  creds = flow.run_local_server(port=0)
  service = build('calendar','v3',credentials=creds)
  event_body = {
     'summary': 'Test calendar','location': 'Gurgaon,Haryana','description': 'A chance to hear more about Google\'s developer 
      products.','start': {
    'dateTime': '2020-03-28T09:00:00-07:00','timeZone': 'Asia/Kolkata',},'end': {
    'dateTime': '2020-03-28T17:00:00-07:00','timeZone': 'America/Los_Angeles','attendees': [
    {'email': 'user@gmail.com'},],'reminders': {
    'useDefault': False,"visibility": "public",}
 event = service.events().insert(calendarId='primary',body=evnt_body)  

也尝试在此范围内添加'https://www.googleapis.com/auth/userinfo.email',但它在凭据中返回None。 我需要在出席者列表中添加所有者用户的电子邮件地址

kangzhai77 回答:用户获得许可后如何获取电子邮件地址以及日历的凭据 注意:参考:

您可以致电Users.getProfile,并向userId提供特殊值 me 以指示已通过身份验证的用户:

gmail_service = build('gmail','v1',credentials=creds)
email_address = gmail_service.users().getProfile(userId='me').execute()["emailAddress"]

注意:

  • 必须提供these scopes中的一个。
  • 请注意,默认情况下,创建活动的用户被添加为与会者。创建事件时,您可能不需要指定此用户。

参考:

本文链接:https://www.f2er.com/2535995.html

大家都在问