Как предварительно заполнить поля для метода аутентификации на swagger или протестировать его интерактивный api с помощью drf spectacular?
мне нужно предварительно заполнить такие поля как имя пользователя, пароль для аутентификации на drf spectacular
.
Я использую схему и auth, и мне нужно предварительно заполнить поля типа :
имя пользователя:текст, пароль:текст
но я не нашел ни одного документа для этого:
"auth": [{"Api-Key Auth": []}, {"Basic Auth": []}, {"JWT Auth": []}],
Я пробовал добавить auth вот так, но все равно поля пустые:
class KeycloakBasicAuthExtension(OpenApiAuthenticationExtension):
target_class = "contrib.keycloak.auth.KeycloackBasicAuth"
name = "Basic Auth"
priority = 1
match_subclasses = True
def get_security_definition(self, auto_schema):
return {
"type": "http",
"scheme": "basic",
"x-example": {"username": "test", "password": "test"},
}
и даже я пытался добавить n Request Name в схему, но я все равно вижу Request Name при развертывании в gitbook как None:
class CheckoutSchema(ModelSchema):
view_class = CheckoutCreateApiView
post = {
"summary": "Create a new Payment Transaction",
"description": "Create a new Payment Transaction",
"tags": [
"Checkout API",
],
"operation_id": "create_payment_transaction_checkout",
"methods": ["POST"],
"request": get_checkout_serializer(name="CheckoutPOSTRequestSerializer"),
"responses": {
201: get_checkout_serializer(name="CheckoutPOSTResponseSerializer"),
400: PolymorphicProxySerializer(
component_name="ClientErrors",
serializers=[
serializers.FieldErrorSerializer,
serializers.NestedFieldErrorSerializer,
serializers.GenericErrorMessage,
],
resource_type_field_name=None,
),
401: serializers.GenericErrorMessage,
403: serializers.GenericErrorMessage,
404: serializers.GenericErrorMessage,
415: serializers.GenericErrorMessage,
423: serializers.GenericErrorMessage,
},
"examples": [
OpenApiExample(
"Create Payment Transaction Example",
summary="create a new payment transaction request example",
description="This example demonstrates how to send a complete request to create a payment transaction.",
value={
"amount": "1.000",
"currency_code": "KWD",
"pg_codes": get_default_pg_codes(),
"type": "payment_request",
},
request_only=True,
),
],
"auth": [{"Api-Key Auth": []}, {"Basic Auth": []}, {"JWT Auth": []}],
}