You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If there is a type: string at the top level of the schema, single parameters get sent as strings and multiple parameters of the same name get sent as arrays (which will cause the validation to fail against a type: string). e.g. use @values = $uri->query_form($param_obj->{name}); $missing = !@values; $values = (@values > 1 ? \@values : $values[0];
If there is a type: integer or type: number at the top level of the schema, consider also converting string values to numbers (if possible) so numeric valiation keywords can be used e.g. minimum, multipleOf.
if there is a type: array at the top level of the schema, send single values as an arrayref, e.g. @values = $uri->query_form($param_obj->{name}); $missing = !@values; $values = \@values;
when explode=false, parse style=form parameters foo=1,2,3 as the array [ 1, 2, 3 ].
The text was updated successfully, but these errors were encountered:
Welcome to the challenge of 6570. It works pretty well for serialization. It sucks royally for deserialization. It wasn't intended to work for deserialization. We are at the mercy of URL designers to create URLs that don't suck.
https://spec.openapis.org/oas/v3.1.0#parameter-object
https://swagger.io/docs/specification/describing-parameters/
https://swagger.io/docs/specification/serialization/
If there is a
type: string
at the top level of the schema, single parameters get sent as strings and multiple parameters of the same name get sent as arrays (which will cause the validation to fail against atype: string
). e.g. use@values = $uri->query_form($param_obj->{name}); $missing = !@values; $values = (@values > 1 ? \@values : $values[0];
If there is a
type: integer
ortype: number
at the top level of the schema, consider also converting string values to numbers (if possible) so numeric valiation keywords can be used e.g. minimum, multipleOf.if there is a
type: array
at the top level of the schema, send single values as an arrayref, e.g.@values = $uri->query_form($param_obj->{name}); $missing = !@values; $values = \@values;
when explode=false, parse style=form parameters
foo=1,2,3
as the array[ 1, 2, 3 ]
.The text was updated successfully, but these errors were encountered: