The encoded string may be decoded by the Gateway.


Article ID: 221442


Updated On:


CA API Gateway


When pass the URL-encoded Body to API Gateway,  will get the following results:
1.  The context variable  "$ {request.mainpart}" returns a URL-encoded value.
2. The context variable "$ {request.http.parameter. (Parameter name)}" returns the decoded value.

Why is "$ {request.http.parameter. (Parameter name)}" decoded?


Release : 10.0

Component : API GATEWAY


This is by design based on usage of the context variables.
if you're using the request.http.parameter.(parametername) context variables, you are presumably interested in the actual value, not URL-encoded value, because these variables are for providing info related to the http parameters
if you're using request.mainpart, you are presumably interested in the unaltered request content. this variable might be used in later services downstream so you want to control whether you want to decode or not, not automatically decode (edited)