0
我試圖訪問客戶的Google Drive以下載其文件。在自己的谷歌驅動器上測試代碼時,我能夠成功下載文件。然而,當我從他們那裏得到了OAuth的代碼,我得到的錯誤:invalid_grant驗證oauth請求時出錯 - Google Drive
oauth2client.client.FlowExchangeError: invalid_grant
尋找一些其他的答案後,已建議您確保ACCESS_TYPE =「下線」,這似乎是默認,我可以看到在生成的網址,該參數設置。這聽起來像他們回饋的代碼可能只有一個小時有效,但我試圖在一小時內使用它,但仍然沒有運氣。有關如何避免此問題的其他建議?
這是我一直在運行的代碼:
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線它的錯誤。
非常感謝您的幫助。如果我在允許訪問的用戶的15分鐘內使用它,似乎令牌是有效的。我檢查了我的電腦上的時間,並與NTP同步。我不會多次使用令牌,而且我一次只能使用一個令牌。我不確定爲什麼時間限制似乎會影響令牌,但現在我的問題已解決(我只需確保快速使用令牌)。如果你有任何其他想法,爲什麼它的行爲如此,我很樂意聽到他們的聲音! – user1253952
你在說什麼?如果它的身份驗證碼爲yes,則需要儘快使用該身份驗證並獲取您的訪問令牌和刷新令牌。它不會長時間停留。 – DaImTo
謝謝!是的,驗證碼。沒有意識到有時間限制。你知道它有多久了?當試圖與其他人協調獲取代碼時,這使得它變得具有挑戰性。 – user1253952