上传
通过 HTTP 将文件从磁盘上传到远程服务器。将文件从远程 HTTP 服务器下载到磁盘。
¥Upload files from disk to a remote server over HTTP. Download files from a remote HTTP server to disk.
支持的平台
¥Supported Platforms
This plugin requires a Rust version of at least 1.77.2
Platform | Level | Notes |
---|---|---|
windows | ||
linux | ||
macos | ||
android | ||
ios |
设置
¥Setup
使用项目的包管理器添加依赖:
¥Use your project’s package manager to add the dependency:
npm run tauri add upload
yarn run tauri add upload
pnpm tauri add upload
deno task tauri add upload
bun tauri add upload
cargo tauri add upload
-
Run the following command in the
src-tauri
folder to add the plugin to the project’s dependencies inCargo.toml
:cargo add tauri-plugin-upload -
Modify
lib.rs
to initialize the plugin:src-tauri/src/lib.rs #[cfg_attr(mobile, tauri::mobile_entry_point)]pub fn run() {tauri::Builder::default().plugin(tauri_plugin_upload::init()).run(tauri::generate_context!()).expect("error while running tauri application");} -
Install the JavaScript Guest bindings using your preferred JavaScript package manager:
npm install @tauri-apps/plugin-uploadyarn add @tauri-apps/plugin-uploadpnpm add @tauri-apps/plugin-uploaddeno add npm:@tauri-apps/plugin-uploadbun add @tauri-apps/plugin-upload
使用
¥Usage
完成插件的注册和设置过程后,你可以通过 JavaScript 来宾绑定访问其所有 API。
¥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__.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__.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);
权限
¥Permissions
默认情况下,所有潜在危险的插件命令和范围都会被阻止,无法访问。你必须修改 capabilities
配置中的权限才能启用这些权限。
¥By default all potentially dangerous plugin commands and scopes are blocked and cannot be accessed. You must modify the permissions in your capabilities
configuration to enable these.
有关更详细的说明,请参阅 功能概述。
¥See the Capabilities Overview for more information and the step by step guide to use plugin permissions.
{ "permissions": [ ..., "upload:default", ]}
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 |
---|---|
|
Enables the download command without any pre-configured scope. |
|
Denies the download command without any pre-configured scope. |
|
Enables the upload command without any pre-configured scope. |
|
Denies the upload command without any pre-configured scope. |
Tauri 中文网 - 粤ICP备13048890号