Forum Discussion
Pradeep_Kandala
Nov 06, 2012Nimbostratus
HTTP::Collect and HTTP::payload Not working
I got some problem,
In HTTP::request I'm able to collect only upto 200 bytes using HTTP::collect 200 , if I'm specifying the full body length with full number or using Content-Length of HTTP::he...
hooleylist
Nov 07, 2012Cirrostratus
Is the request chunked or does it not have a content length header? Can you try this version with a bit more debug and reply with the sanitized logs from /var/log/ltm?
when HTTP_REQUEST {
Collect up to the first 1MB of POST data
log local0. "Checking post method [HTTP::method] uri: [HTTP::uri] http_version: [HTTP::version] IP: [IP::client_addr]"
log local0. "Headers: [HTTP::request]"
if {[HTTP::method] eq "POST"}{
Check if there is a content-length header and the value is set to less than 1Mb
if {[HTTP::header exists "Content-Length"] && [HTTP::header "Content-Length"] <= 1048576}{
set clength [HTTP::header "Content-Length"]
} else {
set clength 1048576
}
log local0. "Checking content length $clength IP: [IP::client_addr]"
if { $clength > 0} {
if {$debug}{log local0. "[virtual name]: Collecting $clength bytes IP: [IP::client_addr]"}
HTTP::collect [HTTP::header "Content-Length"]
}
}
}
when HTTP_REQUEST_DATA {
if {$debug}{log local0. "Collecting payload [HTTP::header "Content-Length"] IP: [IP::client_addr]"}
set SAMLResponse [HTTP::payload [HTTP::header "Content-Length"]]
log local0. "saml response : $SAMLResponse IP: [IP::client_addr] "
HTTP::release
}
Aaron
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