4 releases
0.2.0 | Aug 19, 2024 |
---|---|
0.1.2 | Aug 19, 2024 |
0.1.0 | May 13, 2024 |
0.0.2 |
|
0.0.1 |
|
#286 in HTTP server
292 downloads per month
41KB
882 lines
mini-server
The mini rust server
cargo add mini-server
HTTP server
use mini_server::*;
fn main() {
let mut app = HTTPServer::default();
app.get("/", |_, _| {
let mut response = HTTPResponse::default();
response.set_body(b"Hello World!".to_vec());
response
});
app.run();
}
Dynamic paths
The path is an expression that can contains dynamic variables.
- Basic paths:
/
,/this/is/a/path
, ... - Dynamic path:
/this/is/a/@varibale
,/this/is/another/#variable
#
and @
are prefixes for dynamic values. #
for denoting numbers
and @
for strings
use mini_server::*;
fn main() {
let mut app = HTTPServer::default();
app.get("/hello/@name/#age", |_, exprs| {
let name = expand!(exprs, "name", PathExpr::String);
let age = expand!(exprs, "age", PathExpr::Number);
let mut response = HTTPResponse::default();
response.set_body(
format!("Hello {name}, you are {age}!")
.as_bytes()
.to_vec(),
);
response
});
}
Examples
To run an example:
cargo run --example $name
Dependencies
~120KB