-
Notifications
You must be signed in to change notification settings - Fork 9.1k
Description
Hi, while preparing a presentation of the new features of OpenAPI 3.0, I stumbled over this line in the parameter style examples table:
style |
explode |
... | object |
---|---|---|---|
form | true | ... | R=100&G=200&B=150 |
So if I have a parameter color
with an object { "R": 100, "G": 200, "B": 150 }
to be passed as a query parameter (which has default style form
, and default explode value true
), I get a query of ?R=100&G=200&B=150
– no trace of the parameter name color
in here anymore.
If I have two such parameters (e.g. "foregroundColor": { "R": 100, "G": 50, "B": 150 }
and "backgroundColor": { "R": 200, "G": 250, "B": 200 }
), they would passed as ?R=100&G=50&B=150&R=200&G=250&B=200
, from which no server could reliably derive the actual parameters.
Is it really meant to be that way? I guess this is how RFC 6570 defines "form style query expansion", but it will work only if there is only one of those parameters with object schema at all, or if they have non-overlapping property name sets (though having to implement that seems ugly).