HTTP::Headers - Class encapsulating HTTP Message headers
require HTTP::Headers; $request = new HTTP::Headers;
HTTP::Headers is a class encapsulating HTTP style message headers: attribute value pairs which may be repeated, and are printed in a particular order.
Instances of this class are usually created as member variables of the
HTTP::Response classes, internally to the library.
Constructs a new
HTTP::Headers object. You might pass some initial headers as parameters to the constructor. E.g.:
$h = new HTTP::Headers 'Content-Type' => 'text/html', 'MIME-Version' => '1.0', 'Date' => 'Thu, 03 Feb 1994 00:00:00 GMT';
Returns a copy of the object.
Get/Set the value of a request header. The header field name is not case sensitive. The value argument may be a scalar or a reference to a list of scalars. If the value argument is not defined the header is not modified.
The method also accepts multiple ($field => $value) pairs.
The list of previous values for the last $field is returned. Only the first header value is returned in scalar context.
$header->header('MIME-Version' => '1.0', 'User-Agent' => 'My-Web-Client/0.01'); $header->header('Accept' => "text/html, text/plain, image/*"); @accepts = $header->header('Accept');
Add a new value to a field of the request header. The header field name is not case sensitive. The field need not already have a value. Duplicates are retained. The argument may be a scalar or a reference to a list of scalars.
$header->pushHeader('Accept' => 'image/jpeg');
This function removes the headers with the specified names.
Apply the subroutine to each header in turn. The routine is called with two parameters; the name of the field and a single value. If the header has more than one value, then the routine is called once for each value. The
scan() routine uses case for the field name as suggested by HTTP Spec, and follows recommended "Good Practice" of ordering the header fields.
Return the header fields as a formatted MIME header. Since it uses
scan() to build the string, the result will use case as suggested by HTTP Spec, and it will follow recommended "Good Practice" of ordering the header fieds.