zep*_*lin 5 python oauth-2.0 google-drive-api
我正在尝试扩大'expires_in'的值(来自凭证对象,现在是3600秒),因为我想允许用户长时间使用我的应用程序.我正在使用刷新令牌,但只有当用户经常使用app时它才会刷新.
如果您知道如何更改token_expiry日期 - 我也对该解决方案感兴趣.
谢谢你的任何提示.
出于安全原因,到期时间很短,无法更改.但是,您可以使用refresh_token扩展用户的授权,而无需与用户交互.基本上,作为对auth代码交换的响应,服务器提供了如下所示的refresh_token:
{
"access_token" : "ya29.AHES6ZTtm7SuokEB-RGtbBty9IIlNiP9-eNMMQKtXdMP3sfjL1Fc",
"token_type" : "Bearer",
"expires_in" : 3600,
"refresh_token" : "1/HKSmLFXzqP0leUihZp2xUt3-5wkU7Gmu2Os_eBnzw74"
}
Run Code Online (Sandbox Code Playgroud)
当令牌过期时,您所要做的就是使用refresh_token重新授权,而无需用户交互.像这样:
POST /o/oauth2/token HTTP/1.1
Host: accounts.google.com
Content-Type: application/x-www-form-urlencoded
client_id=21302922996.apps.googleusercontent.com&
client_secret=XTHhXh1SlUNgvyWGwDk1EjXB&
refresh_token=1/HKSmLFXzqP0leUihZp2xUt3-5wkU7Gmu2Os_eBnzw74
grant_type=refresh_token
Run Code Online (Sandbox Code Playgroud)
为了使事情变得更简单,当您使用Python时,如果您使用的是google-api-python-client的Credentials类,则甚至不必关心refresh_token .只需使用Credentials.authorize(),它将根据您的状态自动授权或刷新令牌.
| 归档时间: |
|
| 查看次数: |
2791 次 |
| 最近记录: |