Skip to content

Library does not support optional request body #324

Closed
@stojan-jovic

Description

@stojan-jovic

So, if we have definition for requestBody (e.g. for POST request) like this:

requestBody:
  content:
    application/json:
      schema:
        $ref: '#/components/schemas/some_json_schema'
  required: false

and if we try to make request without body, it will produce error like this:

Traceback (most recent call last):
  ...
  File "D:\venvs\.test_venv\lib\site-packages\openapi_core\validation\datatypes.py", line 11, in raise_for_errors
    raise error
  File "D:\venvs\.test_venv\lib\site-packages\openapi_core\validation\request\validators.py", line 164, in _get_body
    deserialised = self._deserialise_media_type(media_type, raw_body)
  File "D:\venvs\.test_venv\lib\site-packages\openapi_core\validation\validators.py", line 28, in _deserialise_media_type
    return deserializer(value)
  File "D:\venvs\.test_venv\lib\site-packages\openapi_core\deserializing\media_types\deserializers.py", line 14, in __call__
    raise DeserializeError(value, self.mimetype)
openapi_core.deserializing.exceptions.DeserializeError: Failed to deserialize value b'' with style application/json

even it should allow it because of required: false.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions