diff options
| -rw-r--r-- | src/lib.rs | 12 | 
1 files changed, 11 insertions, 1 deletions
| @@ -34,6 +34,7 @@ struct FastCgiRequest<'a> {      method: conduit::Method,      headers: conduit::HeaderMap,      path: String, +    query: Option<String>,  }  impl<'a> FastCgiRequest<'a> { @@ -50,6 +51,7 @@ impl<'a> FastCgiRequest<'a> {              method: method,              headers: headers,              path: Self::path(&request), +            query: Self::query(&request),          };          Ok(r) @@ -128,6 +130,10 @@ impl<'a> FastCgiRequest<'a> {              None => "/".to_owned(),          }      } + +    fn query(request: &'a fastcgi::Request) -> Option<String> { +        request.param("QUERY_STRING") +    }  }  impl<'a> conduit::RequestExt for FastCgiRequest<'a> { @@ -155,7 +161,11 @@ impl<'a> conduit::RequestExt for FastCgiRequest<'a> {         &self.path     } -   fn query_string(&self) -> std::option::Option<&str> { todo!() } +   fn query_string(&self) -> std::option::Option<&str> { +       self.query.as_ref() +           .map(|p| p.as_str()) +   } +     fn remote_addr(&self) -> std::net::SocketAddr { todo!() }     fn content_length(&self) -> std::option::Option<u64> { todo!() }     fn headers(&self) -> &conduit::HeaderMap { todo!() } | 
