#!/usr/bin/perl # Perl Cookbook 19.9 Debugging the raw HTTP exchange # dummyhttpd - start an HTTP daemon and print what the client sends use strict; use HTTP::Daemon; # need LWP-5.32 or better my $server = HTTP::Daemon->new( Timeout => 60, LocalPort => 8081, ); print "Please contact me at: url, ">\n"; BEGIN { # set flag for LIMS::cgiapp_prerun() to set tt_param app_url: $ENV{HTTP_DAEMON_ON} = 1; # doesn't work - WTF?? } while (my $client = $server->accept) { CONNECTION: while (my $answer = $client->get_request) { print $answer->as_string; $client->autoflush; RESPONSE: while () { last RESPONSE if $_ eq ".\n"; last CONNECTION if $_ eq "..\n"; print $client $_; } print "\nEOF\n"; } print "CLOSE: ", $client->reason, "\n"; $client->close; undef $client; }