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.
Why add this?
The default
decode JSON
operator requires the user to build a matching type that exactly mimics the schema in the JSON document. However, if the user only wants to extract a single value or a small subset she still has to construct the entire type.The new operator
JSON Path
allows the user to specify multiple JSON path queries to extract data. It uses https://github.com/tidwall/gjson for parsing and extracting the data.There is a noteworthy case where this operator might not work as expected.
When the path expression would return a value that is not a primitive but an object or an array it actually returns the raw JSON for the given expression. Reasons for implementing it that way were:
decode JSON
to work with a much smaller document//cc @td5r
related to #237