0

顧客の Google ドライブにアクセスしてファイルをダウンロードしようとしています。自分の Google ドライブでコードをテストすると、ファイルを正常にダウンロードできます。ただし、それらから oauth コードを取得すると、次のエラーが表示されます。

oauth2client.client.FlowExchangeError: invalid_grant

他のいくつかの回答を見た後、デフォルトのように見える access_type='offline' を確認することが提案されており、生成された URL でこのパラメーターが設定されていることがわかります。また、彼らが返すコードは 1 時間しか有効でないように思えますが、1 時間以内に使用しようとしましたが、まだ運がありません。この問題を回避する方法について他に提案はありますか?

これが私が実行しているコードです:

from oauth2client import client
import webbrowser

flow = client.flow_from_clientsecrets(
  'client_secrets.json',
  scope='https://www.googleapis.com/auth/drive.readonly',
  redirect_uri='urn:ietf:wg:oauth:2.0:oob')

auth_uri = flow.step1_get_authorize_url()
webbrowser.open(auth_uri)

print auth_uri

auth_code = raw_input('Enter the auth code: ')

credentials = flow.step2_exchange(auth_code)
http_auth = credentials.authorize(httplib2.Http())

flow.step2_exchange 行でエラーになります。

4

1 に答える 1