express-openapi-validator
express-openapi-validator copied to clipboard
Optional deep query parameter handling is broken.
Describe the bug Having a query parameter schema like this:
name: sort
example:
field: created
order: desc
in: query
style: deepObject
required: false
schema:
type: object
required:
- field
- order
properties:
field:
enum:
- created
order:
enum:
- desc
- asc
To Reproduce Create an operation with the given query above and do not include a sort parameter
Actual behavior Request results in a 400 validation error
{
"error":
{
"code": "Error",
"message": "request.query.sort should have required property 'field', request.query.sort should have required property 'order'",
"details":
[
{
"path": ".query.sort.field",
"message": "should have required property 'field'",
"errorCode": "required.openapi.validation"
},
{
"path": ".query.sort.order",
"message": "should have required property 'order'",
"errorCode": "required.openapi.validation"
}
]
}
}
Expected behavior The parameter validation must not fail as it should be skipped.