HTTP/Parser

HTTP::Parser is a stateful HTTP request/response parsing module.

It accepts chunks of data passed to it and returns either a completion hint or an HTTP::Request (or Response) object when it has the entire request. It was originally written to be part of a simple Event.pm-based HTTP server.

e.g.

use HTTP::Parser;

my $parser = HTTP::Parser->new();
my @lines = ('GET / HTTP/1.1','Host: localhost','Connection: close','','');

my $result;
foreach my $line (@lines) {
$result = $parser->add("$line\x0d\x0a"); print "passing '$line' got '$result'\n"; }
print $parser->object->as_string();

gives

GET /
Connection: close
Host: localhost
X-HTTP-Version: 1.1

INSTALLATION

To install this module type the following:

perl Makefile.PL
make
make test
make install

DEPENDENCIES

This module requires these other modules and libraries:

perl 5.6.1

HTTP::Request
HTTP::Response (both part of libwww-perl) URI

COPYRIGHT AND LICENCE

Copyright (C) 2004-2007 David B. Robins Some fixes for 0.05 supplied by David Cannings

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.