首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当使用FastAPI ()` for GraphQL时,如何在GraphQL中获取用户auth信息?

当使用FastAPI ()` for GraphQL时,如何在GraphQL中获取用户auth信息?
EN

Stack Overflow用户
提问于 2020-05-21 08:50:50
回答 1查看 1.8K关注 0票数 3

我正在使用FastAPI,现在想要使用graphene添加GraphQL。

我在用:

  • fastapi-user
  • starlette.graphql.GraphQLApp

这是GraphQL的路由,以及我如何使用快速用户包。

代码语言:javascript
复制
import fastapi_users
from starlette.graphql import GraphQLApp
from mypackage.schema import my_schema
...

app.include_router(fastapi_users.router, prefix="/users", tags=["users"])
app.include_router(google_oauth_router, prefix="/google-oauth", tags=["users"])
app.add_route("/", GraphQLApp(schema=my_schema))
...

schema中,我需要获取用户信息并控制基于角色的auth。

如何或如何在get_current_active_user()模式中使用GraphQL方法?

EN

回答 1

Stack Overflow用户

发布于 2020-10-16 01:42:14

我假设my_schema继承了graphene.ObjectType,第一个参数是info,如下面的示例所示:

https://fastapi.tiangolo.com/advanced/graphql/

代码语言:javascript
复制
from graphene import ObjectType, String

class Query(ObjectType):
    hello = String(name=String(default_value="stranger"))

    def resolve_hello(self, info, name):
        return "Hello " + name

info包含包含用户信息的会话对象。

info.context['request'].session['user']

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61930695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档