2个版本
0.1.1 | 2019年8月8日 |
---|---|
0.1.0 | 2019年8月8日 |
#918 in HTTP服务器
24KB
401 行
tus_client
一个用于与tus启用端点交互的Rust本地客户端库。
reqwest
实现
tus_client
需要一个实现 HttpHandler
特质的"处理器"。要包括针对 reqwest
的此特质的默认实现,在将 tus_client
作为依赖项包含时指定 reqwest
功能。
# Other parts of Cargo.toml omitted for brevity
[dependencies]
tus_client = {version = "x.x.x", features = ["reqwest"]}
用法
创建一个 tus_client::Client
结构体的实例。
use tus_client::Client;
use reqwest;
// Assumes "reqwest" feature is enabled (see above)
let client = Client::new(reqwest::Client::new());
你需要一个上传URL才能上传文件。这可能是由你提供的(例如通过一个单独的API),或者你可能需要通过 tus 协议创建文件。如果你提供了上传URL,你可以跳过此步骤。
let upload_url = client
.create("https://my.tus.server/files/", "/path/to/file")
.expect("Failed to create file on server");
接下来,你可以通过调用 upload
开始上传文件。文件将默认以5 MiB的块上传。要自定义块大小,请使用 upload_with_chunk_size
而不是 upload
。
client
.upload(&upload_url, "/path/to/file")
.expect("Failed to upload file to server");
upload
(以及 upload_with_chunk_size
)将在上传传输中断时自动从上次中断处恢复上传。
依赖
~0.3–3.5MB
~76K SLoC