โ01-07-2020 08:12 PM
Hi Team,
I am sending a invalid json payload from the postman to my pipeline.
The pipeline has first snap as Copy, when i checked the output of copy it has removed duplicated keys from the invalid json payload. My expectation was that it will throw error as i have sent invalid json.
Any thought on how can i fail the pipeline if the payload coming as invalid json into pipeline/snap?
Below was payload i sent to pipe from postman tool-
{
โwwwโ: {
โstationโ: โ3333โ,
โstationโ: โ22222โ,
โstationโ: โ44444โ,
โddโ: 24224,
โdd1โ: โ34224โ,
โdd2โ: โsfsfโ,
โdd3โ: โdddsfsfโ
}
}
The output of copy snap came as below(i wannt the snap to be failed as it was invalid json data)-
{
โwwwโ: {
โstationโ: โ44444โ,
โscaleIdโ: โwrwrโ,
โddโ: 24224,
โdd1โ: โ34224โ,
โdd2โ: โsfsfโ,
โdd3โ: โdddsfsfโ
}
}
Thanks,
Kumar R
โ01-07-2020 10:47 PM
why are you using a copy snap to validate JSON? Copy will just simply give you multiple outputs, feed you input from postman to a JSON generator and it should fail validating the JSON.
โ01-07-2020 10:54 PM
Hi Anubhav,
Thanks for looking in this! I gave example of copy snap to show that it removes dup keys in invalid json.
As per your suggestion i tried using Json generator by having i/p view and template to snap as below-
[
{
โwwwโ : $www
}
]
But Json generator also has removed dup key and provided output. I want this to be failed as i supplied invalid json from psotman. $www has dup key inside it as โstationโ
โ01-07-2020 11:01 PM
Hi,
Can you try JSON.parse() function in a mapper and give it a try.
โ01-07-2020 11:10 PM
The i/p feed itself was json so canโt use JSON.parse.
To use parse need to make it string first i.e JSON.parse(JSON.stringify($))
However JSON.stringify($) itself removing duplicate key.