在flask_restful中flask_jwt_extended CSRF_Token

Fas*_*l K 2 python access-token flask-restful flask-jwt-extended csrf-token

我只在 cookie 中设置访问令牌。但我在cookies中也发现了CSRF_token。我不明白为什么会发生以及它是如何发生的。

看我的代码:- 设置访问令牌。

     access_token = create_access_token(identity=user.id, fresh=True)
     refresh_token = create_refresh_token(identity=user.id)
     resp=Response.SUCCESS(data={'id': user.id, 'refresh_token': refresh_token})
     set_access_cookies(resp,access_token)
     return resp
Run Code Online (Sandbox Code Playgroud)

饼干

邮递员饼干

当我使用@jwt_requiured((locations=['cookies'],fresh=True) 它时返回Missing CSRF token。在这里,我需要通过 header 传递 CSRF 令牌。有谁知道这里发生了什么?我应该做什么?

Fas*_*l K 5

我发现,flask_jwt_extended CSRF_Token 的工作原理是这样的。作为解决方案,可以禁用 csrf 保护 ( app.config["JWT_COOKIE_CSRF_PROTECT"] = False) 或通过标头传递 csrf_token。