The encoded string may be decoded by the Gateway.

book

Article ID: 221442

calendar_today

Updated On:

Products

CA API Gateway

Issue/Introduction

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?

Environment

Release : 10.0

Component : API GATEWAY

Resolution

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)