From ff9060ea0987e29e4d468ff7c9fed7cc7109bf2b Mon Sep 17 00:00:00 2001 From: metamuffin Date: Tue, 1 Aug 2023 20:32:35 +0200 Subject: federation possible but inconvinient --- server/src/routes/api/mod.rs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'server/src/routes/api/mod.rs') diff --git a/server/src/routes/api/mod.rs b/server/src/routes/api/mod.rs index b39950c..84dd6a8 100644 --- a/server/src/routes/api/mod.rs +++ b/server/src/routes/api/mod.rs @@ -9,6 +9,7 @@ use super::ui::{ error::MyResult, }; use crate::database::Database; +use reqwest::Client; use rocket::{get, post, response::Redirect, serde::json::Json, State}; use serde_json::{json, Value}; @@ -27,3 +28,26 @@ pub fn r_api_account_login(database: &State, data: Json) -> let token = login_logic(database, &data.username, &data.password)?; Ok(json!(token)) } +pub async fn c_api_account_login( + host: &str, + tls: bool, + username: String, + password: String, + expire: u64, +) -> MyResult { + Ok(Client::builder() + .build()? + .post(format!( + "{}://{host}/api/account/login", + if tls { "https" } else { "http" } + )) + .body(serde_json::to_string(&LoginForm { + expire, + password, + username, + })?) + .send() + .await? + .json() + .await?) +} -- cgit v1.2.3-70-g09d2