From 91fb02ce5510ca1a8884d0f7d846471b6ae72d7d Mon Sep 17 00:00:00 2001 From: Darius Auding <Darius.auding@gmx.de> Date: Tue, 6 Jun 2023 20:49:49 +0200 Subject: [PATCH] update the `get_get_form_data()` to return a Result<Hasmap<&str, Result<&str, ParseFormError>>, ParseFormError> for easier handling of not existant keys --- core/http/src/handling/request.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/core/http/src/handling/request.rs b/core/http/src/handling/request.rs index 12947a6..6fa46de 100644 --- a/core/http/src/handling/request.rs +++ b/core/http/src/handling/request.rs @@ -75,7 +75,7 @@ impl Request<'_> { pub fn get_get_form_keys<'a>( &'a self, keys: &'a [&str], - ) -> Result<HashMap<&str, &str>, ParseFormError> { + ) -> Result<HashMap<&str, Result<&str, ParseFormError>>, ParseFormError> { let data = if let Some(val) = self.uri.split_once("?") { val } else { @@ -100,14 +100,14 @@ impl Request<'_> { } let mut response = HashMap::new(); for key in keys { - let entry = if let Some(val) = values.get_key_value(key) { - val + let entry = if let Some(val) = values.get(key) { + Ok(*val) } else { - return Err(ParseFormError { + Err(ParseFormError { error: ParseErrors::NoData, - }); + }) }; - response.insert(*entry.0, *entry.1); + response.insert((*key).into(), entry); } Ok(response) } -- GitLab