Vue.js 蟒蛇石墨烯。授权错误处理

Vue.js 蟒蛇石墨烯。授权错误处理,vue.js,graphene-python,Vue.js,Graphene Python,我有以下环境: 前端 @vue/cli 4.1.2 vue阿波罗3.0.2 后端 python 3.8 django 3.0.2 石墨烯django 2.8.0 django graphql jwt 0.3.0 我的问题是在令牌过期时处理身份验证错误。例如,如果我在令牌过期时请求查询我: def resolve_me(root, info): user = info.context.user if user.is_anonymous: raise GraphQLE

我有以下环境:

前端

@vue/cli 4.1.2

vue阿波罗3.0.2

后端

python 3.8

django 3.0.2

石墨烯django 2.8.0

django graphql jwt 0.3.0

我的问题是在令牌过期时处理身份验证错误。例如,如果我在令牌过期时请求查询我:

def resolve_me(root, info):
    user = info.context.user
    if user.is_anonymous:
        raise GraphQLError('Authentication failure!!')
    return user
在apollo客户端的链接中,接收到一个200,networkError对象为空,graphQLErrors对象不提供状态代码

您如何管理此场景? 提前感谢。

查看此评论

据我所知,从GraphQL规范中根本没有讨论http响应代码。HTTP的状态代码与rest原则紧密相连。我不清楚GraphQLAPI是否应该区分2XX和4XX状态码

最值得注意的是,您可以将多个变体批处理到发送给服务器的同一个请求中。如果一个成功创建资源201,一个变异资源200,一个验证失败400,另一个目标对象不存在404,那么API的返回值应该是什么

目前,GraphQLAPI似乎偏向于200,除非服务器崩溃,在这种情况下是500