none
浏览器是如何知道下载文件的大小的? RRS feed

  • 问题

  • 下载前,浏览器是如何知道下载文件的大小的?

    是直接读取服务器的硬盘?还是IIS提供这些数据给浏览器?
    本人现在使用Windows Server 2003, CentOS Linux 5.2, Windows XP, VirtualBox 2.1.4, Visual Studio 2005, Eclipse 3.4, Microsoft.NET Framework 2.0 SP2, C# 2.0, SQL Server 2000, MySQL 5.0, FireBird 2.1.1, PHP 5.2.4, Office 2007, OpenOffice 3.0和永中Office2009.
    2009年4月13日 1:11

答案

  • 先发送一个Head请求就可以得到了,比如

    System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.WebRequest.Create("http://download.microsoft.com/download/6/3/c/63c69e5d-74c9-48ea-b905-30ac3831f288/VS80sp1-KB926601-X86-ENU.exe");
    req.Method = "HEAD";
    Response.Write(req.GetResponse().ContentLength);
    孟宪会
    • 已标记为答案 dvdvip 2009年4月13日 8:23
    2009年4月13日 5:05
    版主
  • 用Response.TransmitFile方法就OK
    • 已标记为答案 dvdvip 2009年4月13日 8:23
    2009年4月13日 7:28

全部回复

  • 先发送一个Head请求就可以得到了,比如

    System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.WebRequest.Create("http://download.microsoft.com/download/6/3/c/63c69e5d-74c9-48ea-b905-30ac3831f288/VS80sp1-KB926601-X86-ENU.exe");
    req.Method = "HEAD";
    Response.Write(req.GetResponse().ContentLength);
    孟宪会
    • 已标记为答案 dvdvip 2009年4月13日 8:23
    2009年4月13日 5:05
    版主
  • 用Response.TransmitFile方法就OK
    • 已标记为答案 dvdvip 2009年4月13日 8:23
    2009年4月13日 7:28