找不到Google Calendar API错误

时间:2018-06-27 08:51:45

标签: node.js google-calendar-api

我正在使用Google日历获取日历事件。GoogleCalendar API教程为here

一切正常,我可以通过设置calendarId:'primary'来获得活动。

我的日历中除了“主”日历外还有其他日历,例如假期。然后,我认为我应该将calendarId更改为其他人以获取事件,但出现错误:

Error: Not Found

代码如下:zh_cn.china#holiday@group.v.calendar.google.comcalendarId不起作用,

calendar.events.list({
    calendarId: 'primary',
    //calendarId: 'zh_cn.china#holiday@group.v.calendar.google.com',
    timeMin: (new Date()).toISOString(),
    maxResults: 50,
    singleEvents: true,
    orderBy: 'startTime',
  }, (err, {data}) => {
    if (err) return console.log('The API returned an error: ' + err);
    const events = data.items;
    if (events.length) {
      console.log('Upcoming 10 events:');
      events.map((event, i) => {
        const start = event.start.dateTime || event.start.date;
        console.log(`${start} - ${event.summary}`);
      });
    } else {
      console.log('No upcoming events found.');
    }
  });

我还尝试从我的帐户中获取所有calendarId:

   calendar.calendarList.list({
    maxResults: 100
  },function (err, result) {
    console.log(result.data.items);
  })

结果类似于:

 [{ kind: 'calendar#calendarListEntry',
    etag: '"1530087829067000"',
    id: 'zh_cn.china#holiday@group.v.calendar.google.com',
    summary: '中国节假日',
    timeZone: 'Asia/Shanghai',
    colorId: '12',
    backgroundColor: '#fad165',
    foregroundColor: '#000000',
    accessRole: 'reader',
    defaultReminders: [],
    conferenceProperties: { allowedConferenceSolutionTypes: [Array] } ]

看起来calendarID是正确的。

有帮助吗?谢谢!

1 个答案:

答案 0 :(得分:0)

我发现的方法是:

i