From 10e8b7331fb461b2e326645fcda0d78bc089b6bd Mon Sep 17 00:00:00 2001 From: shockrah Date: Mon, 5 Apr 2021 17:41:28 -0700 Subject: [PATCH] + Login route added to net module ! No wrapper goes around this module to avoid fragmentation Note that basically every network hit is built around try's so they'll all return HttpResult's --- tui/src/net.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 tui/src/net.rs diff --git a/tui/src/net.rs b/tui/src/net.rs new file mode 100644 index 0000000..fd275e2 --- /dev/null +++ b/tui/src/net.rs @@ -0,0 +1,19 @@ +use crate::api_types::Channel; +use crate::api_types::Jwt; +use reqwest::{Client, Url}; +use reqwest::Result as HttpResult; + +pub async fn login(url: &str, id: u64, secret: &str) -> HttpResult { + let client = Client::new(); + let mut url = Url::parse(&format!("{}/login", url)).unwrap(); + url.query_pairs_mut().append_pair("id", &format!("{}", id)); + url.query_pairs_mut().append_pair("secret", secret); + + + let response: Jwt = client.get(url).send().await?.json().await?; + Ok(response.jwt) +} + +fn list_channels(url: &str, id: u64, secret: &str) -> Vec { + todo!() +}