0.1.0-preview.1 2019年3月27日

#75 in #production


用于 izanami

MIT/Apache

43KB
1K SLoC

izanami

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

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

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

理由

如今许多使用Rust编写的HTTP服务器和Web框架采用将HTTP请求作为参数,返回相应响应作为返回值的Web应用程序模型。尽管这种模型对于许多具有RESTful架构的Web应用程序效果良好,但它存在以下缺点

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

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

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

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

状态

正在进行中

许可证

本项目根据您的选择许可以下之一

依赖

~1.3–1.9MB
~36K SLoC