グラフェンと 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
。
ミューテーション/モジュールでクッキーを設定する方法はありますか? または、グラフェンの突然変異によってクッキーを設定する他の方法は何ですか?