8个版本

0.3.0 2022年7月25日
0.2.3 2022年7月22日
0.1.3 2022年7月13日

#970 in HTTP服务器

Download history 10/week @ 2024-04-06 53/week @ 2024-06-29

53 每月下载量

MIT 许可证

17KB
295 代码行

Craweb

Total downloads count Latest crate version

多线程异步Web服务器,使用Rust编写。而且它真的很快(我们处理一个请求少于1秒)!

安装

您可以使用crates.io安装此crate。

[dependencies]
craweb = "*" # Or you can replace version with specific ones.

编写基本服务器

为了启动服务器,您必须执行以下操作

  1. 在您的 main.rs 文件中初始化服务器。
  2. 添加至少一个路由。
  3. 将服务器绑定到特定的IP地址和端口。

以下是一个示例(以及在根存储库中的example_server

use std::collections::HashMap;
use std::sync::Arc;

use craweb::{
    models::Response,
    server::Server,
};

#[tokio::main]
async fn main() {
    let mut server = Server::new(None, None, None);

    server.get("/", |_| {
        let mut headers = HashMap::new();
        headers.insert("Content-Type", "application/json");

        return Response {
            content: "{\"status\": \"Hello, World!\"}",
            status_code: 200,
            status_message: "OK",
            headers,
        };
    });

    Arc::new(server).bind("127.0.0.1:3000").await;
}

许可证

此crate受MIT许可证的许可。您可以在此处阅读完整的许可证文本。

依赖项

~3.5–10MB
~84K SLoC