我很好奇文件分享网站如何检测用户通过下载管理器下载文件。
如何启用ASP.NET Web应用程序以阻止从下载管理器下载。
答案 0 :(得分:2)
当您是服务器时,您可以收到一些有关访问您的客户的有趣信息。
其中一个参数是告诉您“用户代理”,或简单地说是浏览器类型。
在PHP中,它位于数组$ _SERVER(http://php.net/manual/en/reserved.variables.server.php)中。
在Dot Net中,我认为它是HttpRequest类(http://msdn.microsoft.com/en-us/library/system.web.httprequest.aspx)的一部分。
在实时中,您可以“询问”这些参数是什么类型的客户端类型(IE,Firefox或独立客户端),并对其做出反应,如阻止下载。
答案 1 :(得分:1)
像rapidshare这样的网站无法访问您的浏览器/下载管理器。他们根据您的IP地址从服务器中找到有关下载的信息。
我认为您不能制作任何可以拥有此类权限的网络应用程序。
答案 2 :(得分:1)
你想要阻止什么?下载管理器本身并不邪恶。
您如何定义下载管理器?每个网络浏览器都有一个不同质量的集成下载管理器。
您应该尝试在下载管理器中防止您不喜欢的行为,而不是下载管理器本身。
答案 3 :(得分:1)
我相信引荐来源(http://en.wikipedia.org/wiki/HTTP_referrer)可以用作另一个便宜的检查,以查看下载的启动位置。
答案 4 :(得分:1)
大多数下载管理器还使用Accept-Header
HTTP标头,允许部分内容下载并重新启动重置。请参阅此处的一些文档:HTTP Status: 206 Partial Content and Range Requests
答案 5 :(得分:0)
如果您的意思是阻止可恢复和多连接下载,则应在响应中添加 Accept-Ranges:none 标题。
在Asp.net或Asp.net MVC中:
Response.AddHeader("Accept-Ranges", "none");
要了解详情,请参阅Accept-Ranges