0.1.0-preview.2 2019年3月27日
0.1.0-preview.1 2019年1月15日

#6 in #asgi


3 crate 中使用

MIT/Apache

6KB
113

izanami

ASGI启发的简单Web应用程序接口。

这个库处于实验阶段,不能用于生产。

这个项目的目标是建立一个关注简单性和易于扩展的Web应用程序接口,并提供基于此接口的HTTP服务器的参考实现。

原因

许多现有的Rust HTTP服务器和Web框架使用将HTTP请求作为参数,并返回相应响应的Web应用程序模型。尽管这种模型对许多具有RESTful架构的Web应用程序来说效果很好,但它有以下缺点

  • 难以编写应用程序返回响应后的清理过程。在许多情况下,应用程序需要等待对客户端的响应直到清理过程完成,或者后台生成一个任务来继续清理。

  • 在某些用例中,例如WebSocket,上述以返回响应结束应用程序逻辑的模型不适用。

  • 应用程序需要准备表示响应体的具体类型。如果应用程序由多个分支组成,并且它们有不同的主体类型,则需要提供一个枚举来总结它们的类型。

本项目旨在建立一个可以克服上述缺点,并能够连接现有传统(RPC-like)应用程序的Web应用程序模型。

状态

正在进行中(WIP)

许可证

本项目受以下任一许可证的许可

任选其一。

依赖

~605KB
~11K SLoC