Google Drive API - 使用存储的凭据授权httplib2.Http()

时间:2013-12-15 22:18:42

标签: python google-api google-drive-api

我无法弄清楚我的代码有什么问题,也许你可以帮助我,这是我的情况:

我正在制作一个简单的命令行工具来上传谷歌驱动器上的文件,如果没有凭据存储我的所有工作,我正在使用新的令牌,但如果我使用存储的数据上传不起作用,这里是我的代码:

flow = flow_from_clientsecrets(JSON,
                               scope=OAUTH_SCOPE,
                               redirect_uri=REDIRECT_URI)
credentials = flow.step2_exchange(code)
storage.put(credentials)

我正在使用一个流对象来检索获取授权我的应用程序的链接,当我有代码我将它传递给第2步并存储凭据,然后我创建一个新的构建

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

现在,如果我使用此代码,它可以工作,但如果我尝试使用

storage = Storage('credential.dat')
credentials = storage.get() //I also tried locked_get(), same result
http = credentials.authorize(httplib2.Http())

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

不再有效了。

数据在credential.dat中写入,所以这不是问题,任何想法?

谢谢!

0 个答案:

没有答案