Forum Discussion
7 Replies
Sort By
- Telnet_178675Nimbostratus
i have Parameter named "User-Info" inside HTTP POST Request i want to check & if value of this parameter = XX , send to Pool-1 , if not send to Pool-2
Add Comment
- Brad_Parker_139Nacreous
If it is a query parameter you can do it with something like this:
when HTTP_REQUEST { if {[string tolower [URI::query [HTTP::uri] "User_Info"]] equals "xx"}{ pool "pool-1" } else { pool "pool-2" } }
- Brad_Parker_139NacreousIf your POST body is XML you could use a XML profile to direct your traffic to a pool based on that value. https://support.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/ltm-implementations-11-6-0/3.html If its some other kind of body you may have to get more creative and parse the HTTP payload using HTTP::collect, https://clouddocs.f5.com/api/irules/HTTP__collect.html, and the HTTP_REQUEST_DATA event.
- Brad_ParkerCirrus
If it is a query parameter you can do it with something like this:
when HTTP_REQUEST { if {[string tolower [URI::query [HTTP::uri] "User_Info"]] equals "xx"}{ pool "pool-1" } else { pool "pool-2" } }
- Brad_ParkerCirrusIf your POST body is XML you could use a XML profile to direct your traffic to a pool based on that value. https://support.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/ltm-implementations-11-6-0/3.html If its some other kind of body you may have to get more creative and parse the HTTP payload using HTTP::collect, https://devcentral.f5.com/Wiki/iRules.HTTP__collect.ashx, and the HTTP_REQUEST_DATA event.
- Telnet_178675Nimbostratus
what if Parameter is not inside URI Query ?
- Telnet_178675Nimbostratus
what if Parameter is not inside URI Query ?