#bittorrent #p2p #torrent #peer-id

bin+lib rdest

rdest 是一个简单的 BitTorrent 客户端,目前支持 BEP3 规范

1 个不稳定版本

0.1.0 2021 年 5 月 2 日

#10 in #peer-id

MIT/Apache 协议

3.5MB
4K SLoC

rdest

rdest 是一个简单的 BitTorrent 客户端,目前支持 BEP3 规范。

示例

从命令行运行 rdest。

rdest get ubuntu-20.04.2.0-desktop-amd64.iso.torrent

运行 rdest 代码。

use rdest::{Metainfo, Session};
use rdest::peer_id;
use std::path::Path;

#[tokio::main]
async fn main() {
    let path = Path::new("ubuntu-20.04.2.0-desktop-amd64.iso.torrent");
    let torrent_file = Metainfo::from_file(path).unwrap();

    let mut session = Session::new(torrent_file, peer_id::generate());
    session.run().await;
}

参考资料


lib.rs:

Rust 是一个简单的 BitTorrent 客户端,目前支持 BEP3 规范。

示例

use rdest::{Metainfo, Session};
use std::path::Path;

let path = Path::new("ubuntu-20.04.2.0-desktop-amd64.iso.torrent");
let torrent_file = Metainfo::from_file(path).unwrap();
let peer_id = b"AAAAABBBBBCCCCCDDDDD";

let mut session = Session::new(torrent_file, *peer_id);
session.run().await;

依赖项

~9–13MB
~250K SLoC