it to your CGIs. Entries surrounded by C</> characters are considered regular
expressions.
-Default is to pass the whole of C<%ENV>, except for C<MOD_PERL> (that is, the
-default C<kill_env> is C<[ 'MOD_PERL' ]>.
+Default is to pass the whole of C<%ENV>, except for C<MOD_PERL> and
+C<CONTENT_TYPE> (that is, the default C<kill_env> is C<[ qw(MOD_PERL
+CONTENT_TYPE) ]>.
C<< $your_controller->{CGI}{username_field} >> should be the field for your user's name, which will be
read from C<< $c->user->obj >>. Defaults to 'username'.
$pass_env = [ $pass_env ] unless ref $pass_env;
my $kill_env = $self->{CGI}{kill_env};
- $kill_env = [ 'MOD_PERL' ] unless defined $kill_env;
+ $kill_env = [ 'MOD_PERL', 'CONTENT_TYPE' ] unless defined $kill_env;
$kill_env = [ $kill_env ] unless ref $kill_env;
if (@$pass_env) {
my $cgi = sub {
my $cgi = CGI->new;
print $cgi->header;
- print 'foo:',$cgi->param('foo'),' bar:',$cgi->param('bar')
+ print 'foo:',$cgi->param('foo'),' bar:',$cgi->param('bar');
};
sub handle_cgi : Path('/cgi-bin/test.cgi') {
use FindBin '$Bin';
use lib "$Bin/lib";
-use Test::More tests => 4;
+use Test::More tests => 5;
use Catalyst::Test 'TestApp';
use HTTP::Request::Common;
is($response->content, 'foo:bar bar:baz', 'POST to CGI');
+$response = request POST '/cgi-bin/test.cgi', [
+ foo => 'bar',
+ bar => 'baz',
+], 'Content-Type' => 'form-data';
+
+is($response->content, 'foo:bar bar:baz', 'POST to CGI (form-data)');
+
$response = request '/cgi-bin/test_pathinfo.cgi/path/%2Finfo';
is($response->content, '/path/%2Finfo', 'PATH_INFO is correct');