4个版本
使用旧的Rust 2015
0.2.0 | 2018年8月24日 |
---|---|
0.1.2 | 2016年5月9日 |
0.1.1 | 2016年5月9日 |
0.1.0 | 2016年5月9日 |
#1001 in 认证
17KB
360 行
hyperdav
一个基本、易于使用的WebDAV客户端库。
示例
以下是您如何在服务器上放置文件的方法。
extern crate hyperdav;
use std::fs::OpenOptions;
use hyperdav::ClientBuilder;
fn main() {
let client = ClientBuilder::default()
.credentials(
"username",
"password",
)
.build("webdav_url")
.unwrap();
let f = OpenOptions::new()
.read(true)
.open("/foo/bar/file.txt")
.unwrap();
client.put(f, "file.txt");
}
lib.rs
:
hyperdav
The hyperdav
crate提供与WebDAV协议交互的API。
它易于使用,并处理了用户所有HTTP抽象。
GET请求
#
let client = Client::new()
.credentials("foo", "bar")
.build("https://demo.owncloud.org/remote.php/webdav/")
.unwrap();
let mut res = client.get(&["file.txt"])?;
let mut buf = vec![];
res.copy_to(&mut buf)?;
成功时,GET请求将返回来自Response
的reqwest
crate。
PUT请求
#
let client = Client::new()
.credentials("foo", "bar")
.build("https://demo.owncloud.org/remote.php/webdav/")
.unwrap();
let r = std::io::empty();
client.put(r, &["file.txt"])?;
# Ok(())
成功时,PUT请求将返回()
以仅表示成功
依赖项
~15–24MB
~420K SLoC