3 个版本
0.0.3 | 2024 年 7 月 7 日 |
---|---|
0.0.2 | 2024 年 7 月 5 日 |
0.0.1 | 2024 年 7 月 5 日 |
#348 在 HTTP 服务器
每月 144 下载
34KB
879 行
Ilmen-http
**勿在生产环境中使用**
一个小巧、自制的奇怪 http 服务器。
使用默认配置和无安全措施
fn main() {
let config=Config::new(8082, SecurityProtocol::Basic(auth_method));
let server= HttpServer::new(config, routes());
server.start();
}
fn auth_validate(couple :(String, String)) -> bool {
return true;
}
routes = vec![
Route {verb: Verb::GET, route: "/book/{id}".to_string(),method: get_book, need_security: true},
]
pub fn get_book(handler: ParamsHandler) -> Response {
return handler.params
.get("id")
.ok_or(TechnicalError::from("Missing Id"))
.and_then(|id| id.parse::<i32>().unwrap())
.and_then(|id| database::get_one_book(id))
.and_then(|book| serde_json::to_string(&rappel).unwrap())
.map(|rows| Response::from((200, rows.to_string())))
.unwrap_or_else(Response::from);
}
依赖项
~2.3–9.5MB
~96K SLoC