我正在使用 google-api-ruby-client 来处理 Google Calendar API v3。
我面临的唯一问题是两次更新事件。
之前已在此处讨论过(Google Calendar api v3 re-update issue),但没有 ruby 客户端,也没有答案。
当我添加一个新事件时,我会得到一个 ID 和一个 ETAG。我使用 ID 更新事件并获得新的 ETAG。现在,如果我尝试第二次更新,它不会更新并发送 400 错误消息“无效值”。
我必须在第二次更新时发送最新的 ETAG,但我不确定在使用 google-api-ruby-client 时如何发送。
这是代码:
event = {
'summary' => "Summary",
'location' => "Location",
'description' => "Description",
'start' => {
'dateTime' => @entry.from_date
},
'end' => {
'dateTime' => @entry.to_date
}
}
result = client.execute(:api_method => service.events.update,
:parameters => {'calendarId' => @entry.calendar.gid, 'eventId'=>@entry.gid},
:body => JSON.dump(event),
:headers => {'Content-Type' => 'application/json'})