编程语言
首页 > 编程语言> > python-使用Google API的离线刷新令牌

python-使用Google API的离线刷新令牌

作者:互联网

我正在尝试使用Google Analytics(分析)API,并且在用户离线时可以访问.我使用oauth2decorator_from_clientsecrets最初获取凭据(默认情况下应请求脱机访问).我可以在令牌过期之前1小时访问API.在此之后,我最终收到以下错误:

“ AccessTokenRefreshError:invalid_grant”

我正在使用以下代码使用存储的凭据访问API:

credentials = StorageByKeyName(CredentialsModel, user_id, 'credentials').get()
http = httplib2.Http()
http = credentials.authorize(http)
analytics = build("analytics", "v3", http=http)
query = analytics.management().webproperties().list(accountId="123456").execute()

我怀疑这与未正确获得初始脱机访问权限有关.最初将用户定向到授权URL时,我看不到预期的确认

“Perform these operations when I’m not using the application”

相反,我看到的是:

另外,我正在为我的应用程序使用“ Web应用程序的客户端ID”.

干杯!

解决方法:

我对整天花在这个问题上并不满意,但这是我的解决方案.

revoked我从用户那里创建了应用程序,然后从数据库中删除了存储的凭据.

我确定我已经第一步完成了,但是显然没有.

我一生只有10个小时无法回去.希望这对某人有用.

标签:google-app-engine,google-api,oauth2client,python
来源: https://codeday.me/bug/20191122/2062916.html