Skip to content
Tauri

Upload

Upload files from disk to a remote server over HTTP. Download files from a remote HTTP server to disk.

Setup

This plugin requires a Rust version of at least 1.75

Use your project’s package manager to add the dependency:

npm run tauri add upload

Usage

Once you’ve completed the registration and setup process for the plugin, you can access all of its APIs through the JavaScript guest bindings.

Here’s an example of how you can use the plugin to upload and download files:

import { upload } from '@tauri-apps/plugin-upload';
// when using `"withGlobalTauri": true`, you may use
// const { upload } = window.__TAURI_PLUGIN_UPLOAD__;
upload(
'https://example.com/file-upload',
'./path/to/my/file.txt',
({ progress, total }) =>
console.log(`Uploaded ${progress} of ${total} bytes`), // a callback that will be called with the upload progress
{ 'Content-Type': 'text/plain' } // optional headers to send with the request
);
import { download } from '@tauri-apps/plugin-upload';
// when using `"withGlobalTauri": true`, you may use
// const { download } = window.__TAURI_PLUGIN_UPLOAD__;
download(
'https://example.com/file-download-link',
'./path/to/save/my/file.txt',
({ progress, total }) =>
console.log(`Downloaded ${progress} of ${total} bytes`), // a callback that will be called with the download progress
{ 'Content-Type': 'text/plain' } // optional headers to send with the request
);

Default Permission

This permission set configures what kind of operations are available from the upload plugin.

Granted Permissions

All operations are enabled by default.

  • allow-upload
  • allow-download

Permission Table

Identifier Description

upload:allow-download

Enables the download command without any pre-configured scope.

upload:deny-download

Denies the download command without any pre-configured scope.

upload:allow-upload

Enables the upload command without any pre-configured scope.

upload:deny-upload

Denies the upload command without any pre-configured scope.


© 2024 Tauri Contributors. CC-BY / MIT