通过http请求检测文件下载

时间:2016-04-03 14:45:26

标签: file http networking browser

每当客户端从网络服务器请求下载文件时,我都会尝试在我的代理服务器中进行过滤,或者只是页面中的元素(例如网站中的图片)。

现在我对它在http请求和响应中的表现感到困惑。

根据我的理解,客户端要求提供URI(例如http://www.example.com/directory/file.zip)和服务器响应200 OK以及文件和标题[Content-Length: 30025, Content-Type: application/zip Accept-Ranges: bytes等等...] < / p>

我如何知道客户端是否要求下载文件,或者只需要在浏览器的网站页面上? 或者它可能是浏览器的决定?

1 个答案:

答案 0 :(得分:0)

你无法找到它。

因为每个网站都使用自己的技术方式。你需要为个人网站做。

检查Request.Method =“POST”

到目前为止,我们检测到的网站很少

以下示例:

// Dropbox使用八位字节流请求块:

s_rel 0.0150000000000006 K_spiel 0.0150000000000000  diff  0.0000000000000006                                      
yes!!!

// Yahoo使用savewithattachment方法

if (url.ToLower().Contains("/chunked_upload?") && url.Contains("chunk=0"))
{
   //File Upload through this URL       
}

// Office365使用

if (url.ToLower().Contains("savewithattachment"))
{
//File Upload through this URL  
}

// Google使用

if (url.ToLower().Contains("createattachment"))
{
//File Upload through this URL  
}