0

我已经更新了这个,因为这个问题比原来的更有意义。我仍然包含我用来显示正在发生的事情的测试代码。

有关我发现的更多最新信息,请参阅评论。

执行 API 来抓取今天的事件(应该有 1 个):

/calendar/v3/calendars/{calid}/events?calendarId={calid}&singleEvents=true&timeMin=2013-04-24T00:00:00.000Z&timeMax=2013-04-25T00:00:00.000Z

它什么也不检索。不返回任何事件。

如果我执行以下操作(即第二天):

/calendar/v3/calendars/{calid}/events?calendarId={calid}&singleEvents=true&timeMin=2013-04-25T00:00:00.000Z&timeMax=2013-04-26T00:00:00.000Z

它检索设置为 24 日(但在晚上 7 点之后)而不是 25 日的以下内容:

{
 "kind": "calendar#events",
 "etag": "\"GZxpEFttRDAOmLHnWRxLHHWPGwk/01XVNYQjwJ5jTmd05uIgK9e6Uhw\"",
 "summary": "test calendar",
 "description": "test calendar",
 "updated": "2013-04-24T13:09:12.000Z",
 "timeZone": "America/Chicago",
 "items": [
  {
   "kind": "calendar#event",
   "etag": "\"GZxpEFttRDAOmLHnWRxLHHWPGwk/Z2NhbDAwMDAxMzY2MTQ4ODczODI3MDAw\"",
   "id": "d1mdj3dasor22f0nm0lbohru7s",
   "status": "confirmed",
   "htmlLink": "https://www.google.com/calendar/event?eid=ZDFtZGozZGFzb3IyMmYwbm0wbGJvaHJ1N3MgYnZzdG9vbHMuY29tX2xidWt1ZmlnczJjMmFycjViODgycDVhYWhvQGc",
   "created": "2013-04-16T21:47:53.000Z",
   "updated": "2013-04-16T21:47:53.827Z",
   "summary": "this should happen 4/24/2013",
   "description": "testing event",
   "creator": {
    "email": "{my email address}",
    "displayName": "my name"
   },
   "organizer": {
    "email": "{calid}",
    "displayName": "test calendar",
    "self": true
   },
   "start": {
    "dateTime": "2013-04-24T21:21:19-05:00"
   },
   "end": {
    "dateTime": "2013-04-24T21:21:19-05:00"
   },
   "iCalUID": "d1mdj3dasor22f0nm0lbohru7s@google.com",
   "sequence": 0,
   "extendedProperties": {
    "private": {
     "evtKey": "key"
    }
   },
   "reminders": {
    "useDefault": true
   }
  }
 ]
}

它应该在 24 日的第一次 api 调用中检索它,而不是 25 日的第二次 api 调用,除非我遗漏了什么。

有任何想法吗?谢谢!

4

1 回答 1

1

有点晚了,但如果你仍然需要它。我认为您检索到的事件d1mdj3dasor22f0nm0lbohru7似乎在日历的默认时区,即美国/芝加哥。这就解释了为什么它仅在您将查询设置为 UTC 时间 25 时才显示

于 2013-11-03T13:27:34.927 回答