Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

http::request(3) [redhat man page]

HTTP::Request(3)					User Contributed Perl Documentation					  HTTP::Request(3)

NAME
HTTP::Request - Class encapsulating HTTP Requests SYNOPSIS
require HTTP::Request; $request = HTTP::Request->new(GET => 'http://www.oslo.net/'); DESCRIPTION
"HTTP::Request" is a class encapsulating HTTP style requests, consisting of a request line, some headers, and some (potentially empty) con- tent. Note that the LWP library also uses this HTTP style requests for non-HTTP protocols. Instances of this class are usually passed to the "request()" method of an "LWP::UserAgent" object: $ua = LWP::UserAgent->new; $request = HTTP::Request->new(GET => 'http://www.oslo.net/'); $response = $ua->request($request); "HTTP::Request" is a subclass of "HTTP::Message" and therefore inherits its methods. The inherited methods most often used are header(), push_header(), remove_header(), and content(). See HTTP::Message for details. The following additional methods are available: $r = HTTP::Request->new($method, $uri) $r = HTTP::Request->new($method, $uri, $header) $r = HTTP::Request->new($method, $uri, $header, $content) Constructs a new "HTTP::Request" object describing a request on the object $uri using method $method. The $uri argument can be either a string, or a reference to a "URI" object. The optional $header argument should be a reference to an "HTTP::Headers" object. The optional $content argument should be a string. $r->method([$val]) $r->uri([$val]) These methods provide public access to the attributes containing respectively the method of the request and the URI object of the request. If an argument is given the attribute is given that as its new value. If no argument is given the value is not touched. In either case the previous value is returned. The method() method argument should be a string. The uri() method accept both a reference to a URI object and a string as its argument. If a string is given, then it should be parseable as an absolute URI. $r->as_string() Method returning a textual representation of the request. Mainly useful for debugging purposes. It takes no arguments. SEE ALSO
HTTP::Headers, HTTP::Message, HTTP::Request::Common COPYRIGHT
Copyright 1995-2001 Gisle Aas. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. libwww-perl-5.65 2001-11-15 HTTP::Request(3)

Check Out this Related Man Page

Parser(3pm)						User Contributed Perl Documentation					       Parser(3pm)

NAME
HTTP::Parser - parse HTTP/1.1 request into HTTP::Request/Response object SYNOPSIS
my $parser = HTTP::Parser->new(); ... my $status = $parser->add($text); if(0 == $status) { print "request: ".$parser->request()->as_string(); # HTTP::Request } elsif(-3 == $status) { print "no content length header! "; } elsif(-2 == $status) { print "need a line of data "; } elsif(-1 == $status) { print "need more data "; } else { # $status > 0 print "need $status byte(s) "; } DESCRIPTION
This is an HTTP request parser. It takes chunks of text as received and returns a 'hint' as to what is required, or returns the HTTP::Request when a complete request has been read. HTTP/1.1 chunking is supported. It dies if it finds an error. new ( named params... ) Create a new HTTP::Parser object. Takes named parameters, e.g.: my $parser = HTTP::Parser->new(request => 1); request Allows or denies parsing an HTTP request and returning an "HTTP::Request" object. response Allows or denies parsing an HTTP response and returning an "HTTP::Response" object. If you pass neither "request" nor "response", only requests are parsed (for backwards compatibility); if you pass either, the other defaults to false (disallowing both requests and responses is a fatal error). add ( string ) Parse request. Returns: 0 if finished (call "object" to get an HTTP::Request or Response object) -1 if not finished but not sure how many bytes remain -2 if waiting for a line (like 0 with a hint) -3 if there was no content-length header, so we can't tell whether we are waiting for more data or not. If you are reading from a TCP stream, you can keep adding data until the connection closes gracefully (the HTTP RFC allows this). If you are reading from a file, you should keep adding until you have all the data. Once you have added all data, you may call "object". if you are not sure whether you have all the data, the HTTP::Response object might be incomplete. count if waiting for that many bytes Dies on error. This method of parsing makes it easier to parse a request from an event-based system, on the other hand, it's quite alright to pass in the whole request. Ideally, the first chunk passed in is the header (up to the double newline), then whatever byte counts are requested. When a request object is returned, the X-HTTP-Version header has the HTTP version, the uri() method will always return a URI object, not a string. Note that a nonzero return is just a hint, and any amount of data can be passed in to a subsequent add() call. data Returns current data not parsed. Mainly useful after a request has been parsed. The data is not removed from the object's buffer, and will be seen before the data next passed to add(). extra Returns the count of extra bytes (length of data()) after a request. object Returns the object request. Only useful after the parse has completed. AUTHOR
David Robins <dbrobins@davidrobins.net> Fixes for 0.05 by David Cannings <david@edeca.net> SEE ALSO
HTTP::Request, HTTP::Response. perl v5.10.1 2011-03-06 Parser(3pm)
Man Page