多年来(大约 6 年前),我们一直在将 Google Sites Content Feed API 与经典 Google 网站一起使用。
https://developers.google.com/google-apps/sites/docs/1.0/developers_guide_protocol#ContentFeedGET
我们的服务显示最近30页的列表属于特定的公告模板页面。为了显示最新信息并节省流量成本,我们使用 Google Sites Content Feed API 按适当的更新时间降序排列,每个 API 请求限制为 30 页。
在我们的服务中,通过 Google Sites Content Feed API,我们经常遇到updated
内容的日期时间问题。该updated
属性有时会变得很奇怪的时间戳。
描述
虽然我们的用户不会更新任何内容,但有时几乎所有内容的时间戳都会自动更新为相同或非常接近的时间戳,无需手动更新,如下所示:
Before
----------------------------------------------------------
| page title | published date | updated date |
| test1 | 2015-03-21 14:51:55 | 2015-03-21 14:51:55 |
| test2 | 2015-03-24 08:09:51 | 2015-03-24 08:09:51 |
| test3 | 2015-04-30 19:30:00 | 2015-04-30 19:30:00 |
----------------------------------------------------------
After(sometimes occur)
----------------------------------------------------------
| page title | published date | updated date |
| test1 | 2015-03-21 14:51:55 | 2015-05-16 07:30:00 |
| test2 | 2015-03-24 08:09:51 | 2015-05-16 07:30:00 |
| test3 | 2015-04-30 19:30:00 | 2015-05-16 07:30:01 |
----------------------------------------------------------
一旦发生,具有最新 N 限制的 Google Content Feed API 结果将变得毫无用处!之后,它只返回太旧的帖子,并且不返回任何真正的最新更新的帖子......
我们猜测这可能是用户的操作问题。当用户手动更新其整个 Google 站点内容的属性或权限以进行管理操作时,可能会发生这种情况。
这个问题不仅在特定的站点和组织上。许多使用我们服务的组织经常抱怨它。如果不是操作问题,则可能是由 Google 协作平台(或其 API)上的错误或规范原因引起的。我们一直在搜索文档,但找不到任何相关规范。
我们想知道为什么这些内容实际上会被更新。我们想以某种方式解决/避免这个问题。
我们确信这不是我们系统的错误,因为我们的服务是只读服务,因此没有 API 写入权限。
API 示例
我们使用 API 如下:
- 用户注册公告内容URL。(可以是一个或多个)
https://sites.google.com/a/example.com/our-great-site/info
- 解析 URL 并调用 Google Sites Content Feed API 以获取 feedLink URL。
https://sites.google.com/feeds/content/example.com/our-great-site?path=/info
返回 gd:feedLink:https://sites.google.com/feeds/content/example.com/our-great-site?parent=7049586268762714903
- 调用 FeedLink URL 获取内容列表。
https://sites.google.com/feeds/content/example.com/our-great-site?parent=7049586268762714903&max-results=30
- 某些更新的内容时间戳有时会变得奇怪。它返回太旧的内容而没有最新的内容。