使用GraphQL和Django进行身份验证

时间:2020-03-21 14:44:44

标签: python django graphql graphene-python django-graphql-jwt

我是一名实习生,得到了一个使用GraphQL和Django的项目,而我都不熟悉。

有一个现有的数据库(SQL Server),因此我不得不通过扩展“ AbstractBaseUser”和“ PermissionsMixin”来重新创建User类。

我将graphene用于GraphQL部分。我可以执行查询,但是在身份验证(使用“ graphql_jwt”)方面,我可以查询以获取令牌,但是当我使用令牌进行身份验证时,总会得到未经过身份验证的用户。 (我正在使用装饰器@ Login_required形式graphql_jwt)

我认为我不了解身份验证在Django中的工作方式。有人可以向我解释吗?

1 个答案:

答案 0 :(得分:0)

谢谢你们的帮助。

问题出在setting.py,

我用了这个:

GRAPHENE = {
 'SCHEMA': 'myServer.schema.schema',
 'MIDDLEWARE' : {
        'graphql_jwt.middleware.JSONWebTokenMiddleware',
 },
}

代替此:

GRAPHENE = {
 'SCHEMA': 'myServer.schema.schema',
 'MIDDLEWARE' : [
        'graphql_jwt.middleware.JSONWebTokenMiddleware',
 ],
}