簡體   English   中英

Google雲端硬盤api和服務帳戶

[英]Google drive api and service account

我為我的帳戶name@steelkiwi.com(谷歌應用程序)創建了服務帳戶,我的應用程序運行正常。 然后我為我的個人帳戶name@gmail.com創建了服務帳戶,為我的應用程序使用這個新憑據,現在當我嘗試插入文件時,我得到錯誤500與下一個文本:

HttpError 500請求https://www.googleapis.com/upload/drive/v2/files?quotaUser=30&uploadType=resumable&convert=true&ocr=false&alt=json返回“內部錯誤”

唯一改變的是憑證SERVICE_ACCOUNT_EMAIL和SERVICE_ACCOUNT_PKCS12_FILE_PATH。 我曾嘗試為name@steelkiwi.com創建另一個服務帳戶,但它沒有幫助,因此我的應用程序僅適用於第一個服務帳戶。 語言是python。

如果您使用應用域管理員創建服務帳戶,則應該可以通過更改下面的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)

好吧,我不確定發生了什么事可能在事故發生后修復了一些內容http://www.google.com/appsstatus#hl=zh-CN&v=issue&ts=1366405199000&iid=369723584758ad9cdfd010ac44c8272e但現在一切正常。 起初我使用服務帳戶的示例創建了一個簡單的小應用程序https://gist.github.com/mobedigg/5420958我已經使用了我的憑據這個應用程序,它的工作原理,所以我將這些憑據放到我的主代碼中,它的工作原理太。 除了憑證之外,主代碼中沒有任何更改。 此外,我在這個小應用程序上嘗試了其他憑據,他們使用它並使用主代碼。 這很奇怪。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM