Jmeter - How to send query parameter which has :: in its value

413 Views Asked by At

sample API call below ,

Http Method : GET

https://sampledomain.com/api?bucket=abc&table=xyz&filters=uuid::12367d-ae0b-44b5-9813-zxzxzx6c00000,anotheruuid::324,date::2022-04-01|2022-04-06,uuid3::1BABFPDT

Here in the API request, query parameter filters is having comma(,) separated key::value pairs (::).

In postman the API call works fine but in Jmeter it errors out with 400 error.

We tried adding query params by directly giving it as path url and also by adding params value . enabled and disabled url encode.

In the request header we are seeing %3A in place of :.

Below is the sample request that is sent using jmeter.

https://sampledomain.com/api?bucket=abc&table=xyz&filters=uuid%3A%3A12367d-ae0b-44b5-9813-zxzxzx6c00000%2Canotheruuid%3A%3A324%2Cdate%3A%3A2022-04-01%7C2022-04-06%2Cuuid3%3A%3A1BABFPDT

How to send the query parameter values which contains :: ?

1

There are 1 best solutions below

1
Dmitri T On

Tick "URL Encode" box for the filters parameter in the HTTP Request and that would be it:

enter image description here

Going forward if you're uncertain regarding how to properly build this or that request you can just record it using JMeter's HTTP(S) Test Script Recorder or JMeter Chrome Extension