首页 > 解决方案 > 我想在使用 google javascript 登录后同步 google 日历事件

问题描述

我正在使用此代码直接验证用户身份并同步谷歌日历事件。

const handleClick = () => {
    gapi.load('client:auth2', () => {
      console.log('loaded client')

      gapi.client.init({
        clientId: CLIENT_ID,
        discoveryDocs: DISCOVERY_DOCS,
        scope: SCOPES,
      })

      gapi.client.load('calendar', 'v3', () => console.log('bam!'))

      gapi.auth2.getAuthInstance().signIn()
      .then(async () => {
        
        /*
            Uncomment the following block to get events
        */
        // get events
        gapi.client.calendar.events.list({
          'calendarId': 'primary',
        }).then((response : any) => {
          const events = response.result.items
          console.log('EVENTS: ', events)
        })
      })
    })}

但我想从我们用谷歌登录后获得的访问令牌访问事件。

这是用于谷歌登录的谷歌:

<GoogleLogin
  clientId="clientID"
  buttonText="Login"
  onSuccess={responseGoogle}
  onFailure={responseGoogle}
  cookiePolicy={'single_host_origin'}
/>

我只是想用谷歌登录,然后访问谷歌日历来获取和玩谷歌日历活动。

我目前正在通过反应来做到这一点。如果有人可以通过后端推荐,那也很棒。

标签: javascriptnode.jsreactjsgoogle-calendar-api

解决方案


console.log(gapi.auth2.getAuthInstance().currentUser.get().getBasicProfile(), '##')

这可以为我们提供身份验证后的基本配置文件


推荐阅读