4 个版本
新 0.2.0 | 2024 年 8 月 19 日 |
---|---|
0.1.2 | 2024 年 8 月 19 日 |
0.1.0 | 2024 年 5 月 13 日 |
0.0.2 |
|
0.0.1 |
|
#288 在 HTTP 服务器
41KB
882 行
mini-server
小型 Rust 服务器
cargo add mini-server
HTTP 服务器
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();
}
动态路径
路径是一个包含动态变量的表达式。
- 基本路径:
/
,/this/is/a/path
,... - 动态路径:
/this/is/a/@varibale
,/this/is/another/#variable
#
和 @
是动态值的前缀。 #
用于表示数字,而 @
用于表示字符串
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
});
}
示例
运行示例
cargo run --example $name
依赖项
~120KB