我们在我们的 Ruby on Rails 项目中使用 google-api-client gem 来访问 Google Drive API 方法,一切都运行良好。但是,在调用 drive.files.update 或 drive.files.insert 方法时,我们有时会收到来自 API 的以下错误响应:
{"code"=>500, "message"=>"无法读取应用配置信息"}
此错误未记录在 SDK 的可能错误列表中,因此我不确定应该如何处理。能否请你帮忙?
谢谢!
我们在我们的 Ruby on Rails 项目中使用 google-api-client gem 来访问 Google Drive API 方法,一切都运行良好。但是,在调用 drive.files.update 或 drive.files.insert 方法时,我们有时会收到来自 API 的以下错误响应:
{"code"=>500, "message"=>"无法读取应用配置信息"}
此错误未记录在 SDK 的可能错误列表中,因此我不确定应该如何处理。能否请你帮忙?
谢谢!
如果此错误是暂时的,最好的方法是在发生这种情况时制定重试策略(只需在放弃之前重试请求 2 或 3 次)。
在 Drive 端似乎存在一些并发问题,其中读取应用程序配置的请求超时。根据使用 Google API 和一般 Web API 的经验,我可以告诉你,即使团队会尝试修复/改进这些(顺便说一句,我会报告错误以便他们进行调查),这样的错误总是会发生一次尽管分布式 Web 规模系统上的并发、超时和可靠性问题的发生率非常低,但也极难解决。拥有防故障代码的最佳方法是对来自外部 Web API 的每个 500 和 503 错误重试几次。
如果您真的有时间,您甚至可以实施指数退避策略,如我们的文档中所述,每次重试之间的时间每次都会增加。