#client-server #request-response #service-request #async-trait #tower #traits #foundation

tower-async-service

代表异步、基于请求/响应的客户端或服务器的特质。原 Tower 库的“异步特质”分支

3 个不稳定版本

0.2.0 2023 年 11 月 20 日
0.1.1 2023 年 7 月 18 日
0.1.0 2023 年 7 月 17 日

异步 中排名 #2129

Download history 26/week @ 2024-03-11 13/week @ 2024-03-18 24/week @ 2024-03-25 70/week @ 2024-04-01 53/week @ 2024-04-08 6/week @ 2024-04-15 10/week @ 2024-04-22 5/week @ 2024-04-29 11/week @ 2024-05-06 15/week @ 2024-05-13 13/week @ 2024-05-20 23/week @ 2024-05-27 14/week @ 2024-06-03 18/week @ 2024-06-10 39/week @ 2024-06-17 25/week @ 2024-06-24

每月下载量 96
用于 5 crate

MIT 许可证

13KB

塔异步服务

Tower Async 所基于的基础 Service 特质。

Crates.io Documentation MIT licensed Build Status

分支

塔异步服务是对 https://github.com/tower-rs/tower 的分支,并利用 async traits 简化事物,使异步函数更容易集成到中间件中。

这个分支完全基于作者的需求,因此可能还不包含您可能需要的所有功能。

请加入 Discord 上的 #tower-async 公共频道,网址为 Discord,或在 Tokio 的 Tower Discord 中标记 @glendc

在适当的情况下,我们将(手动)与 Tower 保持同步,如果有机会,我们也会向上游贡献。然而,由于差异很大,我们不确定这种情况的可能性有多大。

概述

Service 特质提供了 [Tower] 建立的基础。这是一个简单但强大的特质。在核心上,Service 只是一个异步的请求到响应的函数。

async fn(Request) -> Result<Response, Error>

Service 的实现接受一个请求,其类型因协议而异,并返回一个表示响应最终完成或失败的 future。

服务用于表示客户端和服务器。通过客户端使用 Service 的一个实例;服务器 实现 Service

通过标准化接口,可以创建中间件。中间件通过将请求传递到另一个 Service实现 Service。中间件可以执行修改请求等操作。

许可证

本项目遵循 MIT 许可协议

原始 Tower 作者 表示诚挚的感谢,他们也将代码许可给了相同的许可类型。

贡献

除非您明确说明,否则您有意向 Tower Async 提交的任何贡献都将按 MIT 许可协议许可,不附加任何额外条款或条件。

无运行时依赖