#!/usr/bin/env perl =pod =head1 NAME wrt-fcgi - Sample FastCGI wrapper script for App::WRT =head1 DESCRIPTION Pulls in App::WRT and CGI::Fast, runs a configuration file, and loops over FastCGI queries, passing their parameters to C. Useful for local testing of output. Please do not expose to the public web. =cut use strict; use warnings; no warnings 'uninitialized'; use App::WRT; use CGI::Fast; use Getopt::Long; use Pod::Usage; # Handle options, including help generated from the POD above. See: # - http://perldoc.perl.org/Getopt/Long.html#User-defined-subroutines-to-handle-options # - https://metacpan.org/pod/Pod::Usage # - http://michael.thegrebs.com/2014/06/08/Pod-Usage/ my $config_file = 'wrt.json'; GetOptions( 'config=s' => \$config_file, help => sub { pod2usage(0) }, ) or pod2usage(2); my $w = App::WRT::new_from_file($config_file); # use Data::Dumper; # Handle input from FastCGI: while (my $query = CGI::Fast->new) { my @params = $query->multi_param('keywords'); print "Content-Type: text/html\n\n"; print $w->display(@params); } exit;