Как отправлять пользовательские заголовки JSON с запросами в drf_spectacular (django)?

Могу ли я создать собственное описание заголовков JSON в drf_spectacular без использования класса сериализаторов в декораторе @extend_schema?

1 ответ

Решение

Вы можете сделать это с помощью inline_serializer:

      OpenApiParameter(
    name='X-Api-Version',
    type=inline_serializer(
        "JsonHeader",
        fields={
            "a": serializers.CharField,
            "b": serializers.CharField,
        }
    ),
    location=OpenApiParameter.HEADER,
),

или сами напишите необработанную схему:

      
OpenApiParameter(
    name='bbox',
    type={'type': 'object', 'properties': {'a': {}, 'b': {}}, 'required': ['a', 'b']},
    location=OpenApiParameter.HEADER,
)

Вы также можете изучить style а также explode параметры OpenApiParameter для более точного управления.

Другие вопросы по тегам