Skip to content

Commit 0cd2707

Browse files
NPA-4284: Add python script to translate request headers
1 parent 22dceb3 commit 0cd2707

File tree

3 files changed

+24
-0
lines changed

3 files changed

+24
-0
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2+
<Script async="false" continueOnError="false" enabled="true" name="TranslateRequestHeaders">
3+
<DisplayName>TranslateRequestHeaders</DisplayName>
4+
<Properties/>
5+
<ResourceURL>py://translate-request-headers.py</ResourceURL>
6+
</Script>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Access request headers dictionary
2+
request_headers = request.headers
3+
4+
# Map of lowercase header name to desired parcel case header name
5+
request_header_translation = {
6+
"x-request-id": "X-Request-ID",
7+
"x-correlation-id": "X-Correlation-ID"
8+
}
9+
10+
# Loop through request headers
11+
for key, value in request_headers.items():
12+
key = key.lower()
13+
desired_name = request_header_translation.get(key)
14+
if desired_name:
15+
flow.setVariable(f"request.header.{desired_name}", value)

proxies/live/apiproxy/targets/target.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@
88
<Step>
99
<Name>FlowCallout.ApplyRateLimiting</Name>
1010
</Step>
11+
<Step>
12+
<Name>TranslateRequestHeaders</Name>
13+
</Step>
1114
<Step>
1215
<Name>AddDeveloperAppData</Name>
1316
</Step>

0 commit comments

Comments
 (0)