【问题标题】:Google Calendar v3 Error "The requested minimum modification time lies too far in the past. [410]"谷歌日历 v3 错误“请求的最小修改时间在过去太久了。[410]”
【发布时间】:2014-05-20 04:07:50
【问题描述】:

我们正在使用 Google Calendar v3 API 为用户返回自某个时间点以来已更新的事件列表。

在 v2 API 中,没有限制将此日期设置为过去。

如果我们将 UpdatedMin 设置为过早的日期(如 2 个月),则会引发错误

“请求的最小修改时间在过去太久了。[410]”

如果我们将 ShowDeleted 设置为 false,那么我们不会收到错误消息。

我在这里找不到任何关于限制的参考。有谁知道这个限制的细节。不幸的是,在同步日历时,如果一个日历的同步在一段时间内没有运行(除了运行我们希望避免的完整列表),这会导致显示停止

EventsResource.ListRequest lr = new EventsResource.ListRequest(service, c.uc.calendar); 

lr.UpdatedMin = c.primaryModTime.ToLocalTime();
lr.ShowDeleted = true;
Events el = lr.Execute();
if (el.Items.Count > 0)
{   

以下也讨论了这个问题,但没有任何解决方案。

https://groups.google.com/forum/#!msg/google-calendar-api/_rk9o45sXT0/3APXqxi8jvkJ

【问题讨论】:

  • 你有没有发现更多这方面的信息?我遇到了同样的问题并开始尝试不同的日期——在 2017 年 3 月 12 日,它不会让我回到 2/10/17,但它让我做 2/15/17,所以这似乎是限制小于 30 天但大于或等于 25 天。
  • 抱歉没有明确的答案 - 从记忆中它也与音量有关......我们现在使用日历通知而不是检查修改日期。如果我们收到 410 消息,我们会拉满负载并使用它。

标签: google-api google-calendar-api google-api-dotnet-client


【解决方案1】:

有一些解释在:

https://developers.google.com/google-apps/calendar/v3/sync

它说在 410 上您应该擦除存储空间并改为执行完全同步。

还可以考虑按照上一段中的建议切换到同步令牌。

【讨论】:

  • 感谢 luc - 我没有在 v3 文档中看到同步功能。我们使用的是传统方法,所以我想他们没有为“410”发生时提供硬“限制”,而是说在这种情况下需要满载。很高兴知道什么标准会导致 410。
  • 同意,我的意思是在 api 处理的某个时刻,它必须与提供的日期相距太远。它肯定会给出例如“minUpdateAvailable:2020-10-01”的响应。我们可以为此查询 API 吗?
猜你喜欢
  • 2015-01-10
  • 2011-07-26
  • 1970-01-01
  • 2019-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-19
相关资源
最近更新 更多