diff --git a/core/http/src/handling/request.rs b/core/http/src/handling/request.rs
index 12947a6dc74a9c211b54e9cc5fa8f57e4015d55c..6fa46ded00a9d9750ad4a84249d58bc7fa76bcb6 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)
     }