我不知道这是否是正确的方法。但是就这样。
(如果有任何错误,请让我知道)
我想在烧瓶中针对用户存储JWT,将其存储在数据库中对我是否正确?
目前,我正在尝试检查每个请求是否具有有效令牌,但每次都获得一个新令牌。
我正在使用它。
app.before_request(check_token)
def check_token(*args, **kwargs):
if current_user:
if current_user.is_authenticated:
if not hasattr(current_user, "token"):
set_token()
elif current_user.token_time + timedelta(seconds=current_app.config["TOKEN_SECONDS"]) < datetime.utcnow():
set_token()
很明显,我发现它不会保留current_user,因此每次我提出新请求时令牌都会更改。
1)将此令牌保存在数据库中是一种好习惯吗?我现在给它300秒。还是有另一种方法可以针对当前用户保存它?
2)我正在使用Flask渲染页面,并像这样存储用户令牌
<button data-token="asdkjhakjsdnkcz8323lkn42lk3n4kj2nkjn2kj3b4kjnlkj32">
然后我将其中的内容传递给javascript Xhttp请求,以动态更新帖子评论。似乎我不应该这样做,但有效期这么短似乎还可以吗?