google-calendar-api的service.events()。list方法返回超出时间范围的数据

时间:2019-02-02 01:01:27

标签: google-api google-calendar-api

我使用google-calendar-api从此api link获取日历的事件数据。

我想从2018-01-02T00:00:00+09:002018-01-03T00:00:00+09:00获取事件数据。

所以我设置了timeMin=2018-01-02T00:00:00+09:00timeMax=2018-01-03T00:00:00+09:00

您可以看到以下内容:

enter image description here

但是在响应中,也返回了从2017-11-21T14:30:00+09:002017-11-21T15:00:00+09:00的事件数据。为什么?

您可以看到部分响应:

{
   "kind": "calendar#event",
   "etag": "\"3083629687318000\"",
   "id": "XXX",
   "status": "confirmed",
   "htmlLink": "https://www.google.com/calendar/event?eid=XXXX",
   "created": "2018-11-10T01:52:22.000Z",
   "updated": "2018-11-10T01:54:03.659Z",
   "summary": "ForTest",
   "creator": {
    "email": "XXX@XXX.XX.jp",
    "self": true
   },
   "organizer": {
    "email": "XXX@XXX.XX.jp",
    "self": true
   },
   "start": {
    "dateTime": "2017-11-21T14:30:00+09:00",
    "timeZone": "Asia/Tokyo"
   },
   "end": {
    "dateTime": "2017-11-21T15:00:00+09:00",
    "timeZone": "Asia/Tokyo"
   },
   "recurrence": [
    "EXDATE;TZID=Asia/Tokyo:XX",
    "RRULE:FREQ=WEEKLY;UNTIL=XX;BYDAY=TU"
   ],
   "iCalUID": "XXX@XXX.XX.jp",
   "sequence": 3,
   "reminders": {
    "useDefault": true
   }
  },
  {
   "kind": "calendar#event",
   "etag": "\"3083629687318000\"",
   "id": "XXX",
   "status": "confirmed",
   "htmlLink": "https://www.google.com/calendar/event?eid=XXXX",
   "created": "2018-11-10T01:52:22.000Z",
   "updated": "2018-11-10T01:54:03.659Z",
   "summary": "Nice Day",
   "creator": {
    "email": "XXX@XXX.XX.jp",
    "self": true
   },
   "organizer": {
    "email": "XXX@XXX.XX.jp",
    "self": true
   },
   "start": {
    "dateTime": "2018-01-02T14:30:00+09:00",
    "timeZone": "Asia/Tokyo"
   },
   "end": {
    "dateTime": "2018-01-02T15:00:00+09:00",
    "timeZone": "Asia/Tokyo"
   },
   "recurrence": [
    "EXDATE;TZID=Asia/Tokyo:XX",
    "RRULE:FREQ=WEEKLY;UNTIL=XX;BYDAY=TU"
   ],
   "iCalUID": "XXX@XXX.XX.jp",
   "sequence": 3,
   "reminders": {
    "useDefault": true
   }
  }

我不认为应该返回从2017-11-21T14:30:00+09:002017-11-21T15:00:00+09:00的事件。为什么它回来了?

1 个答案:

答案 0 :(得分:0)

2017-11-21T14:30:00+09:002017-11-21T15:00:00+09:00的事件是周期性事件。

如果我设置了singleEvents=True,则重复发生的事件将返回单个事件。

然后将解决此问题。