问题描述
描述:我试图在登录时设置 jwt 令牌使用
flask_jwt_extended.set_access_cookies
和 flask_jwt_extended.set_refresh_cookies
但问题是我无法在 /login
端点设置它,因为它是由flask-security 自动创建的。什么是最好的方法来做到这一点?最好的方法是覆盖 /login
端点并将它们设置在那里吗?或者这可以在 validate
的 ExtendedLoginForm
方法中完成,即使我需要将它添加到请求中,而不是验证需要返回的 True
或 False
值?
最终结果:使用常规 cookie(进行身份验证)与与烧瓶相关的端点进行交互。使用 JWT 令牌(在 cookie 中编码)与 react-native 编译代码交互。
解决方法
我的第一个想法是退后一步 - cookie(会话)是管理所有这些的一种简单且安全的方式 - 为什么 JWT 是 cookie 的一部分?
如果您真的希望每个请求都发送一个 Authentication-Token - Flask-Security 已经提供了。 现在 - 实际回答您的问题 - 您可以附加到“用户身份验证”信号并在那里创建您的令牌和 cookie。