summaryrefslogtreecommitdiff
path: root/webapp/src/utils.rs
blob: 1eadf2fb775ee4f141cde98bf3a2423885baaeda (plain)
1
2
3
4
5
6
7
8
9
10
use gloo_net::http::Response;
use serde::de::DeserializeOwned;

pub async fn ok_json<T>(response: Response) -> Result<T, anyhow::Error>
where T: DeserializeOwned {
    if !response.ok() {
        anyhow::bail!("Request failed: {} {}", response.status(), response.status_text());
    }
    Ok(response.json().await?)
}