Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google drive api &引用;生成此api的发现文档时出错“;尝试构建驱动器服务时,从2013年2月14日开始_Google Drive Api - Fatal编程技术网

Google drive api &引用;生成此api的发现文档时出错“;尝试构建驱动器服务时,从2013年2月14日开始

Google drive api &引用;生成此api的发现文档时出错“;尝试构建驱动器服务时,从2013年2月14日开始,google-drive-api,Google Drive Api,调用驱动器上的构建服务时,我间歇性地遇到此错误。我能够用一个简单的程序来重现这一点,该程序将JSON凭据存储到一个文件中 #!/usr/bin/python import httplib2 import sys from apiclient.discovery import build from oauth2client.client import Credentials json_creds = open('creds.txt', 'r').read() creds = Credentia

调用驱动器上的构建服务时,我间歇性地遇到此错误。我能够用一个简单的程序来重现这一点,该程序将JSON凭据存储到一个文件中

#!/usr/bin/python

import httplib2
import sys
from apiclient.discovery import build
from oauth2client.client import Credentials

json_creds = open('creds.txt', 'r').read()
creds = Credentials.new_from_json(json_creds)

http = httplib2.Http()
http = creds.authorize(http)

try:
    drive_service = build('drive', 'v2', http=http)
except Exception:
    sys.exit(-1)
当我在循环中运行这段代码时,我看到了相当多的错误,循环中的这段代码有15-25%的时间失败

i=0; while [ $i -lt 100 ]; do python jsoncred.py || echo FAIL ; i=$(( $i + 1 )); done | grep FAIL | wc -l
现在,当我使用相同的代码,将“drive”替换为“oauth2”时,代码运行没有问题

我已经确认我正在使用的OAuth令牌是有效的,并且具有正确的作用域:

“expires_in”:2258

“范围”:“范围”


查看我的应用程序日志,这似乎始于太平洋标准时间2013年2月14日下午1点。我没有推送任何新代码,所以我想知道这是否是API的问题。API中是否存在导致此问题的错误?

谷歌看到一些报告称发现文档的错误率增加。现在请在500错误时重试,您应该会成功

有人可能会说,无论如何,您都应该为这个调用设置重试逻辑,因为这是一个良好的实践,但是当前的级别太高了,所以,对此表示抱歉


更新:这个问题现在应该得到解决。

通过我观察到的HTTPS代理:1。相同的HTTP请求(包括头)有时成功,有时失败。2.失败案例的输出为:`{“error”:{“errors”:[{“domain”:“global”,“reason”:“invalidConfiguration”,“message”:“生成此api的发现文档时出错。请稍后再试。”}],“code”:500,“message”:“生成此api的发现文档时出错。请稍后再试。”}“谢谢你,阿里。我发现的最佳解决方法是在发现结果成功时保存它,然后暂时使用build_from_document()而不是build()——当我使用它时,我所有的错误都消失了。另外,当我们查看驱动器API的状态时,当我看到的故障率在10-25%之间时,它仍然被标记为健康状态,是否可以采取措施使API健康状态反映出高的API故障率?这将为我们节省数小时的调试时间。是的,您肯定使用了正确的方法。根据实际的全局错误率,这些运行状况状态是自动的,如果是10%,肯定会触发。这里的问题是发现服务实际上与驱动器API不同。谢谢。您的解决方案为我们节省了数小时的调试时间。不幸的是,我们也看到了20%的失败率。我觉得这相当令人失望,特别是考虑到谷歌驱动API设置的高标准。请参阅上面的更新,这应该得到修复。谢谢你的时间和耐心:D