3 个版本
0.1.2 | 2020 年 9 月 1 日 |
---|---|
0.1.1 | 2020 年 6 月 11 日 |
0.1.0 | 2020 年 6 月 11 日 |
#547 in HTTP 服务器
140KB
3K SLoC
Octane 🚀
一个旨在最小化依赖性同时保持速度的高性能 Web 服务器。基于流行的 JavaScript 网络框架 Express,Octane 结合了 Rust 的速度、Express 的易用性和灵活性,以创造最佳的用户体验。
- 多线程 🚄
- 异步设计 🐆
- 易用、直观的设计 🌱
- 最小依赖性(正在努力进一步减少!) 💕
基本用法
创建一个 octane 实例,然后您可以使用 app.METHOD()
在其上注册您的函数
use octane::config::Config;
use octane::responder::StatusCode;
use octane::server::Octane;
use octane::{
route,
router::{Flow, Route},
};
use std::error::Error;
fn main() -> Result<(), Box<dyn Error>> {
let mut app = Octane::new();
app.ssl(8001)
.key("templates/key.pem")
.cert("templates/cert.pem");
app.get(
"/to_home",
route!(|req, res| {
res.redirect("/").send("redirecting");
Flow::Stop
}),
)?;
app.get(
"/",
route!(|req, res| {
res.send_file("templates/test.html").expect("File not found!");
Flow::Next
}),
)?;
app.add(Octane::static_dir("templates/"))?;
app.listen(8000)
}
文档
文档将在 docs.rs 和官方的 Octane 网站 上提供。
贡献
查看 CONTRIBUTING.md 了解如何为此项目做出贡献
许可协议
OctaneWeb/Octane 在 MIT 许可协议 下授权。
依赖性
~4–16MB
~177K SLoC