检查URL是否是C#.NET中的torrent

IQl*_*n70 12 .net c# bittorrent

什么是我拿的URL是最好的方式:http://foobar.com/foo.torrent并检查是否真的是洪流,而不是一个HTML页面或别的东西有趣.建议?谢谢 :)

bob*_*nce 11

要在不下载资源的情况下检查资源类型,请使用HEAD请求:

WebRequest request= WebRequest.Create("http://foobar.com/foo.torrent");
request.Method= "HEAD";
WebResponse response= request.GetResponse();
if (response.Headers.Get("Content-Type")=="application/x-bittorrent") {
    ...
Run Code Online (Sandbox Code Playgroud)

但是,application/x-bittorrent某些服务器中可能没有设置类型,因此您可能会application/octet-stream改为,或者即使text/plain您不幸.如果您需要考虑到这一点,那么您可以做的就是使用正常的GET请求获取文件,并查看是否可以对其进行解码.

BitTorrent文件格式基于称为"bencode"的格式.这是一个声称要处理它的.NET库.您能猜出这是有效bencode是torrent文件的任何文件,但如果你想确保你可以看看它解码为映射并检查infoannounce性能.


Nat*_*ate 1

阅读 torrent 文件规范,然后编写一个 C# 应用程序来下载 URL 的内容,并查看它是否符合规范中的规则。