我应该使用哪个库来获取访问令牌?
Posted
技术标签:
【中文标题】我应该使用哪个库来获取访问令牌?【英文标题】:Which library I should use to obtain access token? 【发布时间】:2018-03-24 20:30:23 【问题描述】:我有一个使用 Google 登录的网页,我想代表用户访问用户的数据,即使他处于离线状态。
我正在寻找一个库的建议,我可以使用客户端发送到服务器的authorization code
来获取access token
和refresh token
。
我按照官方指南here. 在第 7 步:用授权码交换访问令牌中,作者使用了似乎已弃用的 oauth2client 库:
注意:oauth2client 现已弃用。库中将不再添加任何功能,核心团队正在拒绝支持。我们建议您使用 google-auth 和 oauthlib。有关弃用的更多详细信息,请参阅 oauth2client 弃用。
所以我看了google-auth
此库不支持获取用户凭据,但对使用用户凭据提供有限支持。
我也看了oauthlib,但是有很多页面没有记录。
我正在使用带有 Flask 的 Python 3.x。
【问题讨论】:
我真的不明白我为什么会被否决,在乎有人给出原因或提示吗? 【参考方案1】:使用Requests-OAuthlib结束。
pip install requests requests_oauthlib
from requests_oauthlib import OAuth2Session
oauth = OAuth2Session(client_id=GOOGLE_CLIENT_ID,
scope=GOOGLE_SCOPE,
redirect_uri='http://localhost:8000')
token = oauth.fetch_token(token_url=GOOGLE_TOKEN_URL,
code=authorization_code,
client_secret=GOOGLE_CLIENT_SECRET)
【讨论】:
以上是关于我应该使用哪个库来获取访问令牌?的主要内容,如果未能解决你的问题,请参考以下文章
我应该为每个请求从 sessionStorage 获取访问令牌吗?