5 个不稳定版本
0.3.0 | 2020年12月24日 |
---|---|
0.2.10 | 2020年12月22日 |
0.2.0 | 2020年4月26日 |
0.1.6 | 2020年2月23日 |
0.1.5 | 2020年2月21日 |
#12 in #salvo
每月 156 次下载
5KB
67 代码行
Salvo
Salvo 是一个由 Rust 编写的简单 Web 框架。使用它来构建网站和 REST API 非常简单。
特性
- 基于 hyper, futures 0.3。
- 易于编写路由器。
快速开始
创建一个新的 Rust 项目
cargo new salvo_taste --bin
将以下内容添加到 Cargo.toml
[dependencies]
salvo = "0.3"
tokio = { version = "1.0", features = ["full"] }
在 main.rs 文件中创建一个简单的函数处理器,我们称之为 hello_world
,这个函数只是渲染纯文本 "Hello World"。
use salvo::prelude::*;
#[fn_handler]
async fn hello_world(_conf: Arc<ServerConfig>, _req: &mut Request, _depot: &mut Depot, res: &mut Response) {
res.render_plain_text("Hello World");
}
在 main 函数中,我们需要首先创建一个根 Router,然后创建一个服务器并调用它的 serve 函数
use salvo::prelude::*;
#[fn_handler]
async fn hello_world(_conf: Arc<ServerConfig>, _req: &mut Request, _depot: &mut Depot, res: &mut Response) {
res.render_plain_text("Hello World");
}
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
let mut router = Router::new("/");
router.get(hello_world);
let server = Server::new(router);
server.serve().await?;
Ok(())
}
许可证
Salvo 在 MIT 许可证下授权 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
依赖项
~1.5MB
~35K SLoC