---
name: "Mojo::Upload"
section: "3pm"
platform: "linux"
package: "libmojolicious-perl"
version: "9.39+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Mojo::Upload"
---

# Mojo::Upload(3pm)

Upload

## NAME

Mojo::Upload - Upload

## SYNOPSIS

```
  use Mojo::Upload;
  my $upload = Mojo::Upload->new;
  say $upload->filename;
  $upload->move_to('/home/sri/foo.txt');
```

## DESCRIPTION

Mojo::Upload is a container for uploaded files.

## ATTRIBUTES

Mojo::Upload implements the following attributes.

### asset

```
  my $asset = $upload->asset;
  $upload   = $upload->asset(Mojo::Asset::File->new);
```

Asset containing the uploaded data, usually a Mojo::Asset::File or Mojo::Asset::Memory object.

### filename

```
  my $filename = $upload->filename;
  $upload      = $upload->filename('foo.txt');
```

Name of the uploaded file.

### headers

```
  my $headers = $upload->headers;
  $upload     = $upload->headers(Mojo::Headers->new);
```

Headers for upload, usually a Mojo::Headers object.

### name

```
  my $name = $upload->name;
  $upload  = $upload->name('foo');
```

Name of the upload.

## METHODS

Mojo::Upload inherits all methods from Mojo::Base and implements the following new ones.

### move\_to

```
  $upload = $upload->move_to('/home/sri/foo.txt');
```

Move uploaded data into a specific file.

### size

```
  my $size = $upload->size;
```

Size of uploaded data in bytes.

### slurp

```
  my $bytes = $upload->slurp;
```

Read all uploaded data at once.

## SEE ALSO

Mojolicious, Mojolicious::Guides, \<https://mojolicious.org\>.
