4个版本
0.1.3 | 2023年4月2日 |
---|---|
0.1.2 | 2023年3月31日 |
0.1.1 | 2023年3月30日 |
0.1.0 | 2023年3月30日 |
331 在 HTTP客户端
每月下载 49 次
30KB
727 行
rusty_weed
SeaweedFS的客户端实现。使用reqwest作为HTTP客户端和serde进行序列化和反序列化。
示例
上传字节
let master = Master {
host: MASTER_HOST.to_string(),
port: Some(MASTER_PORT),
};
let options: AssignKeyOptions = Default::default();
let master_resp = master.assign_key(&Some(options)).await;
let fid: FID;
let volume: Volume;
match master_resp {
Ok(x) => {
println!("Address {}", x.location.url);
volume = Volume::from_str(&x.location.url).unwrap();
fid = x.fid;
}
_ => panic!("failed to assign key"),
}
let data = Bytes::from("Hello World!");
let resp = volume.upload_file_bytes(&fid, &data, &None).await;
使用multipart/form-data上传文件
let master = Master {
host: MASTER_HOST.to_string(),
port: Some(MASTER_PORT),
};
let options: AssignKeyOptions = Default::default();
let master_resp = master.assign_key(&Some(options)).await;
let fid: FID;
let volume: Volume;
match master_resp {
Ok(x) => {
println!("Address {}", x.location.url);
volume = Volume::from_str(&x.location.url).unwrap();
fid = x.fid;
}
_ => panic!("failed to assign key"),
}
let form = Form::new().part("file", Part::text("Hello World!").file_name("hello.txt").mime_str("text/plain").unwrap());
let file_resp = volume.upload_file_form(&fid, form, &None).await;
待办事项
主端点
- /vol/vacuum
- /vol/grow
- /col/delete
- /cluster/status
- /cluster/healthz
- /dir/status
- /vol/status
容量端点
- /status
文件端点
- 所有
依赖项
~4–19MB
~256K SLoC