Извлечение схемы самоанализа GraphQL в качестве ответа http

#python #django #graphql #graphene-python #graphene-django

#python #django #graphql #graphene-python #graphene-django

Вопрос:

Я могу сгенерировать схему самоанализа Django Graphene с помощью команды управления Django как

 ./manage.py graphql_schema --schema tutorial.quickstart.schema --out schema.json
  

Как я могу вернуть схему JSON в виде HTTP-ответа из представления, чтобы клиент мог просматривать / извлекать то же самое в любое время?

Комментарии:

1. В GraphQL таком REST случае в чем уникальное преимущество использования ?

2. В этом случае или в целом?

3. Да! В этом случае.

4. Во-первых: этот ответ не должен запрашиваться , он должен быть как есть, поскольку он используется некоторым клиентом для ввода (например, клиентом Apollo ). Во-вторых: этот ответ не может быть подан с GraphQL, поскольку он обратимо зависит друг от друга

Ответ №1:

Используйте introspect() метод —(GitHub) Schema(...) класса —(GitHub) — (Stack Overflow)

 from django.http.response import JsonResponse
from tutorial.quickstart import schema


def introspection_schema(request):
    data = {"data": schema.introspect()}
    return JsonResponse(data)