5 个不稳定版本

0.3.0 2021年4月23日
0.2.2 2021年3月2日
0.2.1 2021年1月26日
0.2.0 2021年1月14日
0.1.0 2020年10月26日

42#peer-to-peer

Download history 71/week @ 2024-03-29 47/week @ 2024-04-05 36/week @ 2024-04-12 43/week @ 2024-04-19 52/week @ 2024-04-26 46/week @ 2024-05-03 43/week @ 2024-05-10 44/week @ 2024-05-17 41/week @ 2024-05-24 34/week @ 2024-05-31 27/week @ 2024-06-07 48/week @ 2024-06-14 52/week @ 2024-06-21 15/week @ 2024-06-28 7/week @ 2024-07-05 24/week @ 2024-07-12

108 每月下载次数
16 个crate中使用 (直接使用3个)

MIT 许可证

57KB
1.5K SLoC

libp2p的替代仓库

Continuous integration

此仓库是libp2p规范的Rust语言替代实现。与rust-libp2p不同,libp2p-rs使用async/await语法编写,并驱动异步运行时。尽管如此,许多代码是从rust-libp2p借用的,部分来自go-libp2p。我们试图保持与这两种实现兼容,但遗憾的是不能保证。

文档

如何使用此库?

如上所述,API与rust-libp2p完全不同。在libp2p-rs中根本不存在“NetworkBehaviour”这样的东西。相反,您应该使用您喜欢的传输构建Swarm,然后您必须从它创建一个Swarm::Control。Swarm::Control暴露了所有Swarm API,可用于操作Swarm - 打开/读取/写入/关闭流等等。这类似于go-libp2p中的BasicHost。至于Kad-DHT,同样出于同样的原因,您应该获取Kad::Control。此外,您可以将Swarm与Kad结合,之后您就有了一个具有路由功能的RoutedHost。

强烈建议详细查看文档和示例代码

代码示例

  • 有关如何编写代码的详细信息可以在examples中找到
    • swarm_simple演示了如何构建传输和创建子流以进行通信
    • kad_simple演示了如何运行Kad-DHT服务器。在本例中,集成了交互式shell,用于调试/观察Kad-DHT内部数据结构
    • ...

版本

注意:主分支现在是活跃的开发分支(从v0.1.0版本开始),这意味着任何时间都可能进行破坏性更改。

依赖项

~5MB
~99K SLoC