【问题标题】:Can I use multiple calendarID's with the google calendar api?我可以在 google 日历 api 中使用多个 calendarID 吗?
【发布时间】:2019-01-11 10:27:25
【问题描述】:

我想使用具有多个日历 ID 的 Google 日历 API。我怎样才能在下面的代码中让它工作?

function listUpcomingEvents() {
        gapi.client.calendar.events.list({
          'calendarId': 'calenderID',
          'timeMin': (new Date()).toISOString(),
          'showDeleted': false,
          'singleEvents': true,
          'maxResults': 10,
          'orderBy': 'startTime'
        }).then(function(response) {
          var events = response.result.items;
          appendPre('Afspraken:');

          if (events.length > 0) {
            for (i = 0; i < events.length; i++) {
              var event = events[i];
              var when = event.start.dateTime;
              if (!when) {
                when = event.start.date;
              }
              appendPre(event.summary + ' (' + when + ')')
            }
          } else {
            appendPre('Geen afspraken vandaag');
          }
        });
      }

【问题讨论】:

  • 您要问的内容比 SO 答案更广泛,而且任务的定义非常薄弱。您可以多次拨打gapi.client.calendar.events.list。如果它们属于不同的 Google 帐户身份,您还需要处理所有身份验证/授权步骤。每个日历或混合和样式单独收集结果,然后根据适合您需要的任何标准显示它们。
  • @marekful 这个问题也很清楚,在任何意义上都不宽泛。此外,由于用户可能有权访问多个日历,因此此问题是有效的,与授权无关。响应包含日历 ID,因此将它们分开不会那么难。如果它起作用,它不起作用。

标签: javascript google-api calendar google-calendar-api


【解决方案1】:

events.list 方法有一个用于调用的主要参数,即日历 ID

获取https://www.googleapis.com/calendar/v3/calendars/calendarId/events

对该端点的每次调用都是针对单个日历 ID。无法向此端点或具有多个日历 ID 的任何其他 Google 日历 API 端点发出单个请求。您需要为要检索数据的每个日历发出请求。

【讨论】:

  • 它接受一个数组的事实使它有点混乱。功能请求?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多