#web #potato #http #server

potato

A very simple and high performance http library

49 releases

new 0.2.7 Apr 29, 2025
0.2.6 Apr 29, 2025
0.1.40 Apr 12, 2025
0.1.35 Mar 30, 2025
0.1.7 Dec 30, 2024

#293 in HTTP server

Download history 336/week @ 2025-01-07 574/week @ 2025-01-14 327/week @ 2025-01-21 13/week @ 2025-01-28 20/week @ 2025-02-04 3/week @ 2025-02-18 349/week @ 2025-03-18 1056/week @ 2025-03-25 328/week @ 2025-04-01 538/week @ 2025-04-08 463/week @ 2025-04-15 427/week @ 2025-04-22

1,820 downloads per month

MIT license

4MB
2.5K SLoC

potato

version status

高性能、简洁语法的HTTP框架。

用法

在线文档

加入库的引用:

cargo add potato
cargo add tokio --features full

Hello Server

use potato::*;

// http://127.0.0.1:8080/hello
#[http_get("/hello")]
async fn hello() -> HttpResponse {
    HttpResponse::html("hello world")
}

#[tokio::main]
async fn main() {
    let mut server = HttpServer::new("0.0.0.0:8080");
    _ = server.serve_http().await;
}

Hello Client

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    let res = potato::get("https://www.fawdlstty.com", vec![]).await?;
    println!("{}", String::from_utf8(res.body)?);
    Ok(())
}

更多示例

请参考:https://github.com/fawdlstty/potato/tree/main/examples

Dependencies

~19–31MB
~532K SLoC