diff options
| author | Fuwn <[email protected]> | 2022-03-26 10:34:01 +0000 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2022-03-26 10:34:01 +0000 |
| commit | 2b820e426f8d60448761121875daa542b6389efc (patch) | |
| tree | 8c145e95bab74c715fb3886a455788e3f1abac72 | |
| parent | refactor(response): remove unused header struct (diff) | |
| download | windmark-2b820e426f8d60448761121875daa542b6389efc.tar.xz windmark-2b820e426f8d60448761121875daa542b6389efc.zip | |
refactor(mount): dynamic format
| -rw-r--r-- | examples/windmark.rs | 2 | ||||
| -rw-r--r-- | src/lib.rs | 10 |
2 files changed, 10 insertions, 2 deletions
diff --git a/examples/windmark.rs b/examples/windmark.rs index f45c9a7..2a4bbf9 100644 --- a/examples/windmark.rs +++ b/examples/windmark.rs @@ -78,7 +78,7 @@ fn main() -> std::io::Result<()> { windmark::utilities::queries_from_url(&url) )) }) - .mount("/param/:lang", |_, _url, dynamic_parameter| { + .mount("/param/<lang>", |_, _url, dynamic_parameter| { Response::Success(format!("Parameter lang is {:?}", dynamic_parameter)) }) .mount("/input", |_, url, _| { @@ -45,7 +45,7 @@ use url::Url; use crate::response::{to_value_set_status, Response}; static DYNAMIC_PARAMETER_REGEX: SyncLazy<Regex> = - SyncLazy::new(|| Regex::new(r":[a-zA-Z][0-9a-zA-Z_-]*").unwrap()); + SyncLazy::new(|| Regex::new(r"<[a-zA-Z][0-9a-zA-Z_-]*>").unwrap()); type RouteResponseHandler = fn(&TcpStream, &Url, Option<String>) -> Response; type CallbackHandler = fn(&TcpStream, &Url); @@ -161,6 +161,14 @@ impl Router { .map(|m| m.as_str().to_string()) .collect::<Vec<String>>(); + // println!( + // "dyn: {:?}", + // dynamic_parameters + // .iter() + // .map(|p| p.replace('<', "").replace('>', "")) + // .collect::<Vec<String>>() + // ); + if let Some(dynamic_parameter) = dynamic_parameters.get(0) { fixed_route = route.replace(dynamic_parameter, ""); is_dynamic = true; |