From d377be4bf6fbfc9d7495d2f6168b1bcebbdb3ce6 Mon Sep 17 00:00:00 2001 From: Darius Auding <Darius.auding@gmx.de> Date: Thu, 1 Jun 2023 21:38:32 +0200 Subject: [PATCH] Approach from request forms/data add a get request with form --- core/http/src/handling/request.rs | 4 +--- site/404.html | 7 +++++++ site/src/main.rs | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/core/http/src/handling/request.rs b/core/http/src/handling/request.rs index f2d4e10..efed546 100644 --- a/core/http/src/handling/request.rs +++ b/core/http/src/handling/request.rs @@ -2,10 +2,7 @@ use std::{collections::HashMap, error::Error, fmt::Display}; -use mime::Mime; - use super::{ - file_handlers::find_mimetype, methods::Method, routes::{Data, Uri}, }; @@ -66,6 +63,7 @@ impl Request<'_> { _ => false, } } + // pub fn get_post_form_key<T: FromRequest>(&self, data: Data) -> T {} pub fn get_get_form_keys( &self, keys: Vec<&str>, diff --git a/site/404.html b/site/404.html index d4c09f4..0a1a4ed 100644 --- a/site/404.html +++ b/site/404.html @@ -15,5 +15,12 @@ <input type="text" id="asdf" name="message" /> <button type="submit">Send</button> </form> + <form action="/static/hi" method="get"> + <label for="jump">Enter asdf</label> + <input type="text" id="jump" name="asdf" /> + <label for="jkl">Enter jkl;</label> + <input type="text" id="jkl" name="jkl" /> + <button type="submit">Send</button> + </form> </body> </html> diff --git a/site/src/main.rs b/site/src/main.rs index b8e4a50..deb31d6 100644 --- a/site/src/main.rs +++ b/site/src/main.rs @@ -21,7 +21,7 @@ fn hashmap_to_string(map: &HashMap<&str, &str>) -> String { } fn handle_static_hi(request: Request<'_>, data: Data) -> Outcome<Response, Status, Data> { - let keys = if let Ok(keys) = request.get_get_form_keys(vec!["asdf", "jkl;"]) { + let keys = if let Ok(keys) = request.get_get_form_keys(vec!["asdf", "jkl"]) { keys } else { return Outcome::Forward(data); @@ -111,7 +111,7 @@ async fn main() { rank: 0, }; - http::build("127.0.0.1:8000") + http::build("192.168.178.32:8000") .await .mount("/", vec![fileserver, post_test, static_hi]) .mount("/post/", vec![post_test]) -- GitLab