Я использую Authlib==0.11
и loginpass==0.2.1
, а настройку и настройку приложения Flask выполняю следующим образом.
app.config['GOOGLE_CLIENT_ID'] = os.environ.get('GOOGLE_CLIENT_ID')
app.config['GOOGLE_CLIENT_SECRET'] = os.environ.get('GOOGLE_CLIENT_SECRET')
app.config['GOOGLE_CLIENT_KWARGS'] = dict(
scope=' '.join([
'openid',
'https://www.googleapis.com/auth/userinfo.profile',
])
)
oauth = OAuth()
oauth.init_app(
app,
fetch_token=authlib_fetch_token,
update_token=authlib_update_token,
)
google_blueprint = create_flask_blueprint(
Google,
oauth,
authlib_handle_authorize,
)
app.register_blueprint(google_blueprint, url_prefix='/google')
Обе упомянутые выше функции authlib взяты из Документация Authlib . Через 3600 секунд, когда токен истекает, мой authlib_update_token
никогда не вызывается. Единственный способ узнать, что срок действия токена истек, - это то, что по моему следующему запросу клиент Authlib вызывает исключение InvalidTokenError
.
Я не уверен, если это проблема в Authlib, loginpass, конфигурации моего приложения или что-то еще. Любые предложения по отладке этого?