gpt4 book ai didi

java - Google Drive API 列表文件错误和 Web 链接错误

转载 作者:行者123 更新时间:2023-11-30 02:56:11 26 4
gpt4 key购买 nike

我有一个使用 Google 云端硬盘公共(public) Web 链接功能的 Android 手机应用程序原型(prototype),以便使用 XML 文件同步位于所述手机中的数据库。

在过去的 3 周里,稳定性方面出现了 2 个关键问题。我会列出它们并告诉你们我的临时补丁来解决这个问题。

(1) 2014 年 3 月 27 日左右,使用 java API 列出 Q 过滤器设置为特定父 ID 的文件时,最大值为指数退避。每页的项目数和失败时重新查询时间的指数退避,如下所示:https://developers.google.com/drive/web/handle-errors : 对于一些测试站点,但不是全部(绝大多数加拿大站点未受影响,纽约市以南的极少数美国站点也未受影响),这导致了 500 内部服务器错误。尝试了多个补丁,以大幅降低每个用户每分钟的查询速度,API 控制台中设置的最大查询速度也提高了 10 倍。这一切都无济于事。最后一个补丁是删除带有给定父 ID 的 Q 过滤器集的多文件列表,并改用子查询,以便在用户 Google Drive 中重建给定的文件树。现在,要记住的重要一点是,这段代码连续工作了 6 个月,并且在上述日期前后,故障事件开始在测试站点之间传播。我考虑的一个假设可能是使用多个父 ID 过滤器的查询不再有效。任何人都可以将他们自己的经历与我的经历联系起来吗?

使用的 Q 字符串格式如下:

trashed = false and hidden = false and ('PARENTID1' in parents or 'PARENTID2' in parents or 'PARENTID3' in parents)

...其中 PARENTIDx 是给定的父 ID 字符串。请注意,此查询字符串一次最多可以包含 10 个不同的父 ID。

setMaxResults(...)

函数也被调用,限制为 1000 个项目,在某些情况下,如果失败将此最大计数降级为 100,则退避。

(2) 东部时间 2014 年 4 月 22 日凌晨 5 点,所有 测试站点上的 Google Drive Web 文件夹出现问题。我已经检查了一些受影响的测试站点上传到驱动器的文件的时间戳,时间戳已正确更新为当前时间,误差在 2 分钟左右。但是,将 XML 文件作为公共(public)链接获取时,显示获取的是 4 月 22 日凌晨 5:00 左右或更早时间的过时版本。自从我们连续测试 Drive 公共(public) Web 链接功能(从 2014 年 1 月起)以来,这是我第一次看到这种情况。我想要知道的人(可能是谷歌工程师)的意见,如果可能的话,他们能够澄清这一点......无论如何,现在损害控制是必不可少的,所以我要么使用HTML Drive API 来规避这个问题,或者只是将我们的整个数据库托管策略转移到另一个提供更好稳定性的提供商。请指教...

(第 2 项的更新):存储在元数据中的文件的时间戳似乎是正确的,但文件的内容仍然是过时的,因此使用 HTML Drive API 将是一个有争议的问题。尝试删除一些关键文件(移动到垃圾桶)会触发应用程序重新生成包含 .xml 的文件夹,但重新生成的文件的内容似乎也保持过时。请注意,使用常规用户界面删除文件和将文件上传到云端硬盘仍然有效。

似乎重新建立正确的驱动器行为的唯一方法是完全删除有问题的文件,而不仅仅是将它们移到垃圾箱。

(再次更新第 2 项):我将这个问题移至此处: Google Drive API file update new possible bug

最佳答案

感谢您的报告。1 似乎是一个正在向用户推出的新实现的错误。我们会把它修好。 (请注意,像这样使用“或”是一个未记录的功能,但它确实曾经起作用。)

我不太理解 #2,但可能值得在一个单独的问题中提出。

关于java - Google Drive API 列表文件错误和 Web 链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23220749/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com