what is the difference between <QueryParams> and <FormParam>
I'm trying to remove a paramter from a request sent by developer apps. The url is - https://rohitreddykancharla9030-eval-test.apigee.net/assign-message-remove?
Now when I make a request from postman there we can select many params, auth, headers, body and so on. If I select PARAMS and in params add the key:value paris, policy is not removing the "foo" paramter from the request (url after adding key:value pairs = https://rohitreddykancharla9030-eval-test.apigee.net/assign-message-remove?hello=world&foo=bar) output is as follows "args": { "foo": "bar", "hello": "world" }, Like we can see foo paramter is not removed.
But if I send the post request from postman BODY "foo" parameter is removed output is as follows "args": {}, "data": "", "files": {}, "form": { "hello": "world" },
IF I use params in postman and <QueryParam> in the code "Foo" is removed and output is "args": {}, "data": "", "files": {}, "form": { "hello": "world" },
Question is what is difference between <QueryParams> and <FormParam>
CODE:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message-1"> <DisplayName>Assign Message-1</DisplayName> <Properties/> <Remove> <FormParams> <FormParam name="foo"/> </FormParams> <!-- <QueryParams>--> <!-- <QueryParam name="foo"/>--> <!--</QueryParams>--> </Remove> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> <AssignTo createNew="false" transport="http" type="request"/> </AssignMessage>