【问题标题】:What to do when Google Calendar API sync token is invalid?Google Calendar API 同步令牌无效时怎么办?
【发布时间】:2016-01-14 13:07:23
【问题描述】:

在 Google Calendar API 的文档中,它是这样说的:

有时同步令牌会被服务器失效,原因有多种,包括令牌过期或相关 ACL 的更改。在这种情况下,服务器将使用响应代码 410 响应增量请求。这将触发客户端存储的完全擦除和新的完全同步。

我系统中的很多同步令牌都失效了,我不知道为什么。我收到很多日历的这个错误:

(410) 同步令牌不再有效,需要完全同步。

我可以做些什么来防止这种情况发生或重新验证同步令牌而不强制用户登录并重新连接到他的日历。目前非常不方便。

【问题讨论】:

  • 建议使用增量同步来更新自上次同步以来发生的更改。但是,如果您收到 410 错误,请确保您的程序正确处理它,否则我建议您使用此处提到的完全同步 developers.google.com/google-apps/calendar/v3/sync
  • 我明白这一点。我正在做增量同步。我的问题是:如何正确处理此 410 错误,以便用户无需登录并重新授予访问其日历的权限?如果需要完全同步,是否可以在不需要用户操作的情况下执行完全同步?另外,为什么会这样?我假设错误是由“各种原因”引起的

标签: google-api google-calendar-api icalendar


【解决方案1】:

正确处理与重新登录等无关。问题在于,此同步令牌不再能够为您提供本地存储的内容与服务器上的内容之间的正确差异。因此,建议您清除本地存储中的事件并发送完全同步请求(这意味着没有同步令牌的列表请求)。您可以继续使用相同的身份验证令牌。

【讨论】:

  • 知道如何模拟这个进行测试吗?
猜你喜欢
  • 2015-03-11
  • 1970-01-01
  • 2015-03-23
  • 1970-01-01
  • 1970-01-01
  • 2011-11-27
  • 2015-02-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多