in reply to need some HTTP::Server::Simple::CGI example
Here's a simple (and hopefully self-explanatory) example:
#!/usr/bin/perl { package MyWebServer; use HTTP::Server::Simple::CGI; our @ISA = qw(HTTP::Server::Simple::CGI); my %dispatch = ( '/hello.cgi' => \&resp_hello, # ... ); sub handle_request { my $self = shift; my $cgi = shift; my $path = $cgi->path_info(); my $handler = $dispatch{$path}; if (ref($handler) eq "CODE") { print "HTTP/1.0 200 OK\r\n"; $handler->($cgi); } else { print "HTTP/1.0 404 Not found\r\n"; print $cgi->header, $cgi->start_html('Not found'), $cgi->h1('Not found'), $cgi->end_html; } } sub resp_hello { my $cgi = shift; # CGI.pm object return if !ref $cgi; my $who = $cgi->param('name'); print $cgi->header, $cgi->start_html("Hello"), $cgi->h1("Hello $who!"), $cgi->end_html; } } # end of package MyWebServer # start the server on port 8080 my $pid = MyWebServer->new(8080)->background(); print "Use 'kill $pid' to stop server.\n";
After having started the script, you should be able to access it via the URL you specified. Good luck.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: need some HTTP::Server::Simple::CGI example
by ww (Archbishop) on Sep 01, 2007 at 15:02 UTC | |
|
Re^2: need some HTTP::Server::Simple::CGI example
by Anonymous Monk on Feb 13, 2008 at 20:13 UTC | |
by almut (Canon) on Feb 13, 2008 at 20:46 UTC | |
by Anonymous Monk on Feb 15, 2008 at 19:01 UTC |