File tree Expand file tree Collapse file tree 5 files changed +29
-3
lines changed
Expand file tree Collapse file tree 5 files changed +29
-3
lines changed Original file line number Diff line number Diff line change 1+ <?xml version =" 1.0" encoding =" UTF-8" standalone =" yes" ?>
2+ <Script async =" false" continueOnError =" true" enabled =" true" name =" MirrorRequestHeaders" >
3+ <DisplayName >MirrorRequestHeaders</DisplayName >
4+ <Properties />
5+ <ResourceURL >py://mirror-request-headers.py</ResourceURL >
6+ </Script >
Original file line number Diff line number Diff line change 11<?xml version =" 1.0" encoding =" UTF-8" standalone =" yes" ?>
2- <Script async =" false" continueOnError =" false " enabled =" true" name =" TranslateRequestHeaders" >
2+ <Script async =" false" continueOnError =" true " enabled =" true" name =" TranslateRequestHeaders" >
33 <DisplayName >TranslateRequestHeaders</DisplayName >
44 <Properties />
55 <ResourceURL >py://translate-request-headers.py</ResourceURL >
Original file line number Diff line number Diff line change 1+ # Access original request headers dictionary
2+ request_headers = JSON .parse (flow .getVariable ("original.headers" ))
3+
4+ # Loop through request headers and set them as response headers
5+ for key , value in request_headers .items ():
6+ flow .setVariable ("response.header.{0}" .format (key ), value )
Original file line number Diff line number Diff line change 11# Access request headers dictionary
2- request_headers = request .headers
2+ request_header_names = flow .getVariable ("request.headers.names" )
3+ request_headers = {}
4+ for name in request_header_names :
5+ request_headers [name ] = flow .getVariable ("request.header." + name )
6+
7+ # Store copy of original request headers
8+ flow .setVariable ("original.headers" , str (request_headers ))
39
410# Map of lowercase header name to desired parcel case header name
511request_header_translation = {"x-request-id" : "X-Request-ID" , "x-correlation-id" : "X-Correlation-ID" }
915 key = key .lower ()
1016 desired_name = request_header_translation .get (key )
1117 if desired_name :
12- flow .setVariable (f"request.header.{ desired_name } " , value )
18+ # Remove header with incorrect casing
19+ flow .removeVariable ("request.header." + key )
20+ # Remove original header to avoid dupicated headers
21+ flow .removeVariable ("request.header." + desired_name )
22+ # Set header with correct casing
23+ flow .setVariable ("request.header." + desired_name , value )
Original file line number Diff line number Diff line change 7373 <Step >
7474 <Name >SetMimeType</Name >
7575 </Step >
76+ <Step >
77+ <Name >MirrorRequestHeaders</Name >
78+ </Step >
7679 </Response >
7780 </PostFlow >
7881 <FaultRules >
You can’t perform that action at this time.
0 commit comments