Recipe 21.5 Interrogating Headers
21.5.1 Problem
You want to learn
the value of a header sent by the client.
21.5.2 Solution
Use the $r->header_in method:
$value = $r->header_in("Header-name");
21.5.3 Discussion
For example, suppose you want to discover the client's preferred
language (as sent in the Accept-Language header).
if ($r->header_in("Accept-Language") !~ /\ben-US\b/i) {
$r->print("No furriners!");
return OK;
}
If you want to access more than one header, use the
$r->headers_in method, which returns a list of
key-value pairs of all clients' request headers, which are typically
assigned to a hash:
%h = $r->headers_in;
if ($h{"Accept-Language"} !~ /\ben-US\b/i) {
$r->print("No furriners!");
return OK;
}
21.5.4 See Also
Writing Apache Modules with Perl and C; Recipe
3.4 in mod_perl Developer's Cookbook; the
Apache.pm manpage
|