我在实现跟踪器时遇到了一些问题 - 我正在使用 PHPTracker作为底层库,但现在这并不重要。
如 BitTorrent spec 中所写,客户端应发送 info_hash
GET 参数等。相反,我收到以下参数:
{
"peer_id":"-AZ4702-WyiDalpWGJno",
"supportcrypto":"1",
"port":"19952",
"azudp":"19952",
"uploaded":"0",
"downloaded":"0",
"left":"22",
"corrupt":"0",
"event":"started",
"numwant":"75",
"no_peer_id":"1",
"compact":"1",
"key":"fdn0htAH",
"azver":"3"
}
相同的参数来自 Vuze 和 uTorrent。我在这里很困惑,因为有些参数在规范中,而另一些则不在。这里发生了什么?
最佳答案
这个查询没有意义,info_hash 键是必不可少的。根据@Arvid 的建议,您的库没有正确解析请求,或者以某种不符合您要求的方式解析请求。
关于network-protocols - BitTorrent 协议(protocol)似乎与现实不符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9851174/