我正在尝试使用BitTorrentSpecification格式化跟踪器请求,但我不知道如何格式化我正在生成的计划字符串peerID。我的程序中的两个样本都是:
New Session ID generated: -MC0001-948902816289
Session ID URLEncoded: %-M%C0%00%1-%94%89%02%81%62%89
我发送了吗?我从服务器收到无效请求...我已经测试过,我的info_hash有效。以下示例请求。
http://tracker.tfile.me/announce?info_hash=%B5%E1%3F%36%35%09%62%85%A2%F4%B9%C8%9A%75%E9%F1%CC%BD%C3%CD&peer_id=%-M%C0%00%1-%94%89%02%81%62%89&port=6888&uploaded=0&downloaded=0&left=4018984971&compact=0
答案 0 :(得分:1)
peer_id的URL编码未正确完成,并且不需要进行URL编码,因为其中的所有字符都是URL安全的。发送方式为:...&peer_id=-MC0001-948902816289&...
此外,compact=1
今天或多或少都是强制性的。很少有跟踪器支持传统的非紧凑回复。更改为...&compact=1
,它会起作用。
也没有event=started
,如果是第一次联系跟踪器,它应该在那里。
发送:
http://tracker.tfile.me/announce?info_hash=%B5%E1%3F%36%35%09%62%85%A2%F4%B9%C8%9A%75%E9%F1%CC%BD%C3%CD&peer_id=-MC0001-948902816289&port=6888&uploaded=0&downloaded=0&left=4018984971&event=started&compact=1
,回复是:
d8:completei0e10:downloadedi0e10:incompletei1e8:intervali2988e12:min intervali1494e5:peers6:******