A-A+

BitTorrent DHT 协议的 GO 实现 DHT

2016年08月10日 Linux 软件 暂无评论 阅读 766 次

DHT 是BitTorrent DHT 协议的实现,采用Go语言。主要包括以下部分:

展示截图:

安装:

go get github.com/shiyanhui/dht

使用示例:

import (
    "fmt"
    "github.com/shiyanhui/dht"
)

func main() {
    downloader := dht.NewWire()
    go func() {
        // once we got the request result
        for resp := range downloader.Response() {
            fmt.Println(resp.InfoHash, resp.MetadataInfo)
        }
    }()
    go downloader.Run()

    config := dht.NewCrawlConfig()
    config.OnAnnouncePeer = func(infoHash, ip string, port int) {
        // request to download the metadata info
        downloader.Request([]byte(infoHash), ip, port)
    }
    d := dht.New(config)

    d.Run()
}
标签:

给我留言

Copyright © SEARU.ORG 保留所有权利.   Theme  Ality 网站地图 360网站安全检测平台

用户登录

分享到: