谷歌驱动api和服务帐户

2024-10-01 17:24:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我为我的帐户创建了服务帐户name@steelkiwi.com(谷歌应用程序)我的应用程序运行良好。然后我为我的个人帐户创建了服务帐户姓名@gmail.com,将此新凭据用于我的应用程序,现在,当我尝试插入文件时,会收到错误500,并显示下一个文本:

HttpError 500 when requesting https://www.googleapis.com/upload/drive/v2/files?quotaUser=30&uploadType=resumable&convert=true&ocr=false&alt=json returned "Internal Error"

唯一更改的是凭据服务帐户\u电子邮件和服务帐户\u PKCS12 \u文件路径。我已尝试为创建另一个服务帐户name@steelkiwi.com但这并没有帮助,所以我的应用程序只适用于第一个服务帐户。 语言是python。在


Tags: 文件name文本com程序运行应用程序错误帐户
2条回答

好吧,我不确定发生了什么,也许在这起事故之后,http://www.google.com/appsstatus#hl=en&v=issue&ts=1366405199000&iid=369723584758ad9cdfd010ac44c8272e 但现在一切正常。一开始,我用服务帐户的例子创建了一个简单的小应用程序https://gist.github.com/mobedigg/5420958我用了这个应用程序的凭据,它很有用,所以我把这个凭据放到我的主代码中,它也起作用了。除了凭据外,主代码中没有任何更改。我还尝试了这个小应用程序的其他凭证,他们与它一起工作,并与主代码一起工作。这很奇怪。在

如果您使用应用程序域管理员创建服务帐户,您应该能够通过更改下面的prn属性来模拟所有用户。如果不设置域外的prn用户,则会看到一个访问错误。在

f = open('path-to-privatekey.p12')
key = f.read()
f.close()

credentials = SignedJwtAssertionCredentials('xxx@developer.gserviceaccount.com', key, scope='https://www.googleapis.com/auth/drive', prn='user@steelkiwi.com')

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

client = build('drive', 'v2', http=http)

相关问题 更多 >

    热门问题