删除后创建相同的事件会导致409错误

时间:2014-12-18 09:03:28

标签: google-api google-calendar-api

我正在编写一个应用程序,它使用API​​将我们服务器中的事件添加到用户的Google日历中。 在这种情况下我遇到了 HTTP 409 Conflict 错误:

  1. 使用一些明确定义的ID / Events: insert
  2. 创建一个事件
  3. 删除活动/ Events: delete
  4. 尝试使用相同的ID创建事件 - 获取错误。
  5. 在以下情况下可以实现这种情况:

    1. 用户从我们的服务器导出事件。
    2. 其中一个事件(比如ID = 1)将在我们的服务器上禁用
    3. 用户再次导出事件 - 此禁用事件将从用户的Google日历/ API调用中删除:delete,eventId = 1
    4. 将再次启用已禁用的活动
    5. 用户执行导出 - 将使用相同的ID = 1触发API插入请求。并且将引发错误409。 / API调用:insert,eventId = 1
    6. 事实上,在调用delete API方法后,事件似乎并未被删除。 这个问题有解决方法吗?

1 个答案:

答案 0 :(得分:6)

事实证明,所谓的“删除”操作实际上并不会删除事件,而只是隐藏它们并将其状态更改为“已取消”。因此,Google日历中的事件仍然存在 作为解决方法,我使用"showDeleted" = true选项检索已删除的条目,然后更新它们。