python 在Ariadne GraphQL响应中添加标头

8fq7wneg  于 2023-01-16  发布在  Python
关注(0)|答案(2)|浏览(147)

bounty已结束。此问题的答案可获得+50声望奖励。奖励宽限期将在8小时后结束。Jeff Tian希望引起更多人关注此问题:希望有人能在这里给我们一些启示!

我正在用ariadne做一个使用python的graphql服务器。
我想在响应中添加标头,比如设置cookie的Set-Cookie。
有办法做到这一点吗?如果没有,有办法在阿里阿德涅设置一个库克。
我使用React作为前端。
帮帮忙。谢谢!

unftdfkk

unftdfkk1#

更改“#将cookie添加到响应对象”部分下面的代码

from ariadne import make_executable_schema, gql

type_defs = gql("""
    type Query {
        example: String!
    }
""")

@app.route("/graphql", methods=["POST"])
def graphql():
    def resolve_example(_, info, **kwargs):
        # Add the cookie to the response object
        info.context["response"].set_cookie("my-custom-cookie", "my-custom-value")
        return "Example"

    resolvers = {
        "Query": {
            "example": resolve_example
        }
    }

    schema = make_executable_schema(type_defs, resolvers)
    return GraphQLView.as_view(schema=schema)(request)
goqiplq2

goqiplq22#

如果你想用一个“头”来命名一个代码段,这样你就可以更容易地找到它,那么就用一个标签(#)来做一个python代码注解。

# Setting Cookies

如果您的意思是使用“页眉”将表单划分为填写表单的人可以看到的不同部分,则可能需要使用HTML。

相关问题