Forum Discussion
HTTP::payload collection mangling UTF-8 characters
hi f5'ers,
The HTTP::payload command doesn' seem to ba able to handle UTF-8 encoded characters. When I capture the HTTP payload into a variable and then manipulate it and update the HTTP payload before sending the request into our application names any unicode characters are being mangled, so "Héro" becomes "Héro".
I've tried creating a simple HTTP virtual server with an iRule that just logs the HTTP payload in /var/log/ltm and I can see its not our application that is causing the issue, it appears to be the HTTP::payload feature.
I saw an article about using binary scan to fix a similar issue but when I tried it it didn't make any difference at all.
Help me f5'ers, you're my only hope!
- Leslie_HubertusRet. Employee
Hi Peter_Lowdon - did Dario_Garrido's reply help solve your issue? If yes, don't forget to click Accept as Solution so others know that is the correct answer - and if no, then I'll see about finding a SME to help you out. 🙂
Hello Peter,
Have you tried this?
"Note that the argument will be interpreted as a byte array. If it is actually a UTF-8 string with multibyte characters, the output will not be what you expect. In order to prepare a UTF-8 string for use as input to HTTP::payload replace, you should first run ‘binary scan c* throwawayvariable’."
REF - https://clouddocs.f5.com/api/irules/HTTP__payload.html
This could also help:
https://support.f5.com/csp/article/K22406348
Recent Discussions
Related Content
* 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