edgee_api_client/
upload.rs1use std::path::Path;
2
3use anyhow::Result;
4
5use super::Client;
6
7impl Client {
8 pub async fn upload_file(&self, path: &Path) -> Result<String> {
9 let presigned_url = self.get_upload_presigned_url().send().await?;
10 let upload_url = &presigned_url.upload_url;
11
12 let content = std::fs::read(path)?;
13
14 let client = reqwest::Client::new();
15 let res = client.put(upload_url).body(content).send().await?;
16 if !res.status().is_success() {
17 anyhow::bail!("Could not upload file");
18 }
19
20 Ok(upload_url.clone())
21 }
22}