3 个版本

0.0.3 2024 年 7 月 7 日
0.0.2 2024 年 7 月 5 日
0.0.1 2024 年 7 月 5 日

#348HTTP 服务器

Download history 239/week @ 2024-07-02 46/week @ 2024-07-09 18/week @ 2024-07-23 12/week @ 2024-07-30

每月 144 下载

MIT 许可证

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