【问题标题】:Why can't I delete native events with Cronofy.com?为什么我不能使用 Cronofy.com 删除本机事件?
【发布时间】:2016-08-24 14:06:03
【问题描述】:

我正在使用 Cronofy 将我的应用程序(仅在本地测试过)与多个日历平台集成。

我无法让它更新或删除本地创建的事件(谷歌或 Outlook),我不明白为什么。文档 (https://www.cronofy.com/developers/api/) 不足以理解它,除此之外没有更多内容。

当我发送删除本机事件的请求时,我确实收到了 202 HTTP 响应,但该事件仍保留在我的 google/outlook 日历中,如果我对自己的事件执行相同操作,它会使用相同的 202 顺利删除.

我怎样才能让它工作?我已经阅读了有关身份验证流程的信息,并且 202 表示它正在处理中,但是这个处理时间似乎太长了(~2 天)

【问题讨论】:

  • 基于这个documentation202 HTTP response表示请求已经被接受处理,但是处理还没有完成。该请求最终可能会或可能不会被执行,因为在实际进行处理时它可能会被禁止。无法从诸如此类的异步操作中重新发送状态代码。检查这个related SO question

标签: api calendar google-calendar-api cronofy


【解决方案1】:

作为标准,我们将日历访问设置为沙盒,并且不允许开发人员编辑最终用户日历中的现有活动。

如果您需要此功能,您可以通过一个流程来请求对用户的一个或多个日历的扩展权限。如果您想访问此内容,请通过 support@cronofy.com 告诉我。

我们在 API 中区分“托管”和“非托管”事件,以帮助简化不同用例所需的操作类型。

托管事件是由您的应用程序创建的事件。创建它们时,我们需要一个event_id,这是您应用程序中事件的 ID。您可以使用event_id 完全控制事件。为了删除托管事件,您将传递 event_id 作为标识参数 https://www.cronofy.com/developers/api/#delete-event

非托管事件是用户在其日历中创建的事件。它们有一个event_uid,用于识别事件。如果您有足够的权限删除非托管事件,则可以将此 event_uid 作为标识参数传递。

我们返回 202 的原因是我们的 API 是异步的。每个 API 请求都是由工作人员执行的日志操作。我们不会内联对下游 API 的调用。相反,我们保护您的应用程序性能,无需处理日历服务器是否可用并响应您的请求。

我希望这有助于解释您所看到的内容。如有任何问题,请让我知道,或者通过 support@cronofy.com 联系我们。

亚当

【讨论】:

    猜你喜欢
    • 2020-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 2022-12-09
    • 2014-11-09
    相关资源
    最近更新 更多