Django 会话不是使用 JWT 和石墨烯生成的
Posted
技术标签:
【中文标题】Django 会话不是使用 JWT 和石墨烯生成的【英文标题】:Django session is not generated using JWT and graphene 【发布时间】:2018-09-26 21:36:52 【问题描述】:我是使用 django 学习石墨烯的新手,正如文档所说,我有这个课程:
import graphql_jwt
class Mutations(graphene.ObjectType):
token_auth = graphql_jwt.ObtainJSONWebToken.Field()
verify_token = graphql_jwt.Verify.Field()
refresh_token = graphql_jwt.Refresh.Field()
但调用 tockenAuth 突变,即使令牌正确生成,因为用户和密码正确,我也看不到会话表中保存的任何内容:
Session.objects.all()
总是空的
我正在检查会话以注销任何用户。那么,如何从 authToken 突变调用生成 Session 条目,以及使用 graphql_jwt 登录/注销用户的正确/更好的方法是什么?
问候
【问题讨论】:
【参考方案1】:JWT 是会话的替代方案 - 它是验证请求的另一种方式,因此如果您使用 JWT,则不需要会话。
JWT 也不会在数据库中创建任何类型的信息 - 您只需使用密码学来验证令牌是否合法。要使用 JWT 进行身份验证,请在您的 AUTHENTICATION_BACKENDS
中包含 JSONWebTokenBackend
,如 here 所述。
阅读更多关于 jwt here.
【讨论】:
嗨 AmerllicA - 给我写信给 don.skoy.333@gmail.com以上是关于Django 会话不是使用 JWT 和石墨烯生成的的主要内容,如果未能解决你的问题,请参考以下文章
石墨烯 Django 和 react-router-relay