X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FRequest.pm;h=d6fb4889c64a02b6b0d1c324ff62480387563c51;hb=6d1ab9154b299ce3697ec69d4ffd10dda4c07c0e;hp=f076fbd53526727554240122f01f8569cd365e76;hpb=e7c0c583d6e12e822dd26bf1282eb610c9a59351;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Request.pm b/lib/Catalyst/Request.pm index f076fbd..d6fb488 100644 --- a/lib/Catalyst/Request.pm +++ b/lib/Catalyst/Request.pm @@ -4,11 +4,12 @@ use strict; use base 'Class::Accessor::Fast'; __PACKAGE__->mk_accessors( - qw/action address arguments base cookies headers hostname match method - parameters path snippets uploads/ + qw/action address arguments body base cookies headers hostname match + method parameters path snippets uploads/ ); *args = \&arguments; +*input = \&body; *params = \¶meters; sub content_encoding { shift->headers->content_encoding(@_) } @@ -18,11 +19,10 @@ sub header { shift->headers->header(@_) } sub referer { shift->headers->referer(@_) } sub user_agent { shift->headers->user_agent(@_) } - sub _assign_values { my ( $self, $map, $values ) = @_; - - while ( my ( $name, $value ) = splice( @{ $values }, 0, 2 ) ) { + + while ( my ( $name, $value ) = splice( @{$values}, 0, 2 ) ) { if ( exists $map->{$name} ) { for ( $map->{$name} ) { @@ -49,6 +49,7 @@ Catalyst::Request - Catalyst Request Class $req->args; $req->arguments; $req->base; + $req->body; $req->content_encoding; $req->content_length; $req->content_type; @@ -56,6 +57,7 @@ Catalyst::Request - Catalyst Request Class $req->header; $req->headers; $req->hostname; + $req->input; $req->match; $req->method; $req->param; @@ -107,6 +109,13 @@ Returns a reference to an array containing the arguments. Contains the url base. This will always have a trailing slash. +=item $req->body + +Contains the message body of the request unless Content-Type is +C or C. + + print $c->request->body + =item $req->content_encoding Shortcut to $req->headers->content_encoding @@ -141,6 +150,10 @@ Contains the hostname of the remote user. print $c->request->hostname +=item $req->input + +Shortcut for $req->body. + =item $req->match This contains be the matching part of a regexp action. otherwise it @@ -226,7 +239,7 @@ A convenient method to $req->uploads. @fields = $c->request->upload; for my $upload ( $c->request->upload('field') ) { - print $upload->{filename}; + print $upload->filename; } =cut @@ -258,38 +271,12 @@ sub upload { =item $req->uploads -Returns a reference to a hash containing uploads. Values can -be either a hashref or a arrayref containing hashrefs. +Returns a reference to a hash containing uploads. Values can be either a +hashref or a arrayref containing C objects. my $upload = $c->request->uploads->{field}; my $upload = $c->request->uploads->{field}->[0]; -The upload hashref contains the following keys: - -=over 4 - -=item * fh - -Filehandle. - -=item * filename - -Client supplied filename. - -=item * size - -Size of the file in bytes. - -=item * tempname - -Path to the temporary spool file. - -=item * type - -Client supplied Content-Type. - -=back - =item $req->user_agent Shortcut to $req->headers->user_agent. User Agent version string.