Google Cal API - "缺少结束时间"插入事件时

时间:2015-11-03 11:20:12

标签: meteor google-api google-calendar-api

我正在尝试使用Google Calendar API在Google日历中插入活动。

我插入的事件资源:

{
  "summary": "test",
  "location": "test",
  "description": "test",
  "start": {
    "dateTime": "2015-11-02T10:00:00-05:00",
    "timeZone": "America/Toronto"
  },
  "end": {
    "dateTime": "2015-11-02T11:00:00-05:00",
    "timeZone": "America/Toronto"
  },
  "attachments": [
    {
      "fileUrl": ""
    }
  ],
  "attendees": [
    {
      "email": "...@gmail.com"
    },
    {
      "email": "...@gmail.com"
    }
  ],
  "reminders": {
    "useDefault": false,
    "overrides": [
      {
        "method": "email",
        "minutes": 1440
      },
      {
        "method": "popup",
        "minutes": 10
      }
    ]
  }
}

此事件作为POST请求的正文发送给https://www.googleapis.com/calendar/v3/calendars/calendarId/events。我没有使用任何图书馆。

我一直得到一个"缺少结束时间"错误。我发现了一些类似的问题,例如this one,他正在使用Javascript库并建议将以下内容作为正文发送:

{
    resource:<event above>,
    calendarId:<calendarId>
}

但这在我的情况下不起作用,也许是因为我没有使用图书馆。我不认为这很重要,但我在Meteor应用程序中这样做。有什么想法吗?

修改 事实证明这毕竟是一个与流星有关的问题。我使用他们的HTTP库犯了一个错误。

1 个答案:

答案 0 :(得分:1)

  

此事件作为POST请求的正文发送到   https://www.googleapis.com/calendar/v3/calendars/ calendarId /事件。

不确定这是不是类型-o但是我使用试用我和您的日期发送了一个请求,并且我发布到我的主日历

POST https://www.googleapis.com/calendar/v3/calendars/primary/events?key={YOUR_API_KEY}

它不是calendarId字符串,它是您要插入的日历的ID。你还必须在最后添加访问令牌。

发送的内容

POST https://www.googleapis.com/calendar/v3/calendars/primary/events?key={YOUR_API_KEY}
{
 "end": {
  "dateTime": "2015-11-02T11:00:00-05:00",
  "timeZone": "America/Toronto"
 },
 "start": {
  "dateTime": "2015-11-02T10:00:00-05:00",
  "timeZone": "America/Toronto"
 },
 "description": "test",
 "summary": "test"
}