Forum Discussion
jwlarger
Nov 06, 2019Cirrus
iRule to replace { - } with %7B - %7D
I need to parse incoming headers and selectively replace { or } with %7B or %7D.
(v11.6.3)
Something like ?
when HTTP_REQUEST {
if { [HTTP::uri] starts_with "/someuri/" } {
HTTP::uri [string map {"/{/" "/%7B/"} [HTTP::uri]]
}
}
But I suspect I'm not escaping the { character correctly.
01070151:3: Rule [/Common/test] error: /Common/test:3: error: [parse error: missing close-bracket][[string map {"/{/" "/%7B/"} [HTTP::uri]]
}]
TIA
Hi,
You must escape this with back slash.
HTTP::uri [string map {\{ %7B \} %7D} [HTTP::uri]] OR HTTP::uri [string map {\x7B %7B \x7D %7D} [HTTP::uri]]
I hope it helps.
Regards.
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects