fix(restapi): fix API ignoring query string parameters for GET requests #158
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hello, it's me again 🙂
Webargs 6.0 changed the behaviour of data location lookups to be single-source instead of a union of all locations, the default now is
json
and it only looks in there.This broke the
/versions
endpoint of the rest-api, because it expectsfilter_expression
andinclude_blocks
as query string parameters:GET
method does not have a request body (json
) in its specification, so only query string is available.Inside the route-decorated function call, the following state can be observed:
This change fixes this problem by forcing webargs to look into the query string parameters if it is a
GET
request, falling back to the defaultjson
otherwise.