NAME

Catalyst::Request::Upload - handles file upload requests

SYNOPSIS

my $upload = $c->req->upload('field');

$upload->basename;
$upload->copy_to;
$upload->fh;
$upload->filename;
$upload->headers;
$upload->link_to;
$upload->size;
$upload->slurp;
$upload->tempname;
$upload->type;

To specify where Catalyst should put the temporary files, set the 'uploadtmp' option in the Catalyst config. If unset, Catalyst will use the system temp dir.

__PACKAGE__->config( uploadtmp => '/path/to/tmpdir' );

See also Catalyst.

DESCRIPTION

This class provides accessors and methods to handle client upload requests.

METHODS

$upload->new

Simple constructor.

$upload->copy_to

Copies the temporary file using File::Copy. Returns true for success, false for failure.

$upload->copy_to('/path/to/target');

$upload->fh

Opens a temporary file (see tempname below) and returns an IO::File handle.

$upload->filename

Returns the client-supplied filename.

$upload->headers

Returns an HTTP::Headers object for the request.

Creates a hard link to the temporary file. Returns true for success, false for failure.

$upload->link_to('/path/to/target');

$upload->size

Returns the size of the uploaded file in bytes.

$upload->slurp

Returns a scalar containing the contents of the temporary file.

Note that this will cause the filehandle pointed to by $upload->fh to be reset to the start of the file using seek and the file handle to be put into binary mode.

$upload->basename

Returns basename for filename.

$upload->tempname

Returns the path to the temporary file.

$upload->type

Returns the client-supplied Content-Type.

meta

Provided by Moose

AUTHORS

Catalyst Contributors, see Catalyst.pm

COPYRIGHT

This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself.