我需要使用石墨烯和 Django 更新 GraphQL 突变中的 cookie。
我的第一个想法是将 cookie 添加到上下文(即请求)中,然后将其设置在中间件中。
我有一个非常简单的突变,看起来像这样:
class SetWantedCookieMutation(graphene.Mutation):
class Arguments:
wanted_cookie = graphene.String(required=True)
ok = graphene.Boolean(required=True)
def mutate(self, info, wanted_cookie):
# set cookie here
info.context.wanted_cookie = wanted_cookie
return SetWantedCookieMutation(ok=True)
Django 中间件是这样的:
class CookieMiddleware(MiddlewareMixin):
def process_response(self, request, response):
if (hasattr(request, 'wanted_cookie')):
response.set_cookie('wanted_cookie', request.wanted_cookie)
return response
但我无法进入wanted_cookie
我的CookieMiddleware
.
任何想法如何在突变/moddlewere 中设置 cookie?或者通过石墨烯突变设置cookie的其他方法是什么?