HTTP文件如何在IIS内部上传?

时间:2011-02-04 13:53:07

标签: asp.net http iis file-upload

我想了解网络上传时发生的事情。

我想其中一个:

  1. 该文件由浏览器加载到内存中,发送到Web服务器缓冲内存,然后通知应用程序收集它。
  2. 浏览器正在读取该文件,同时发送到Web服务器,可以开始逐步保存字节。
  3. 我尝试上传一个非常大的文件,并在接收上传的方法的第一行放置一个断点。我已经看到浏览器如何加载大量的时间......但断点仍未被击中,一段时间后断点被击中。

    我想理解这一点,因为在最糟糕的情况下,如果我允许大量上传,它们可能会在某些时候炸毁服务器内存。

    如果我上传2Gb文件会怎么样? (考虑到Web服务器/应用程序接受该长度)是否需要2Gb的服务器内存?

    干杯。

1 个答案:

答案 0 :(得分:5)

HttpPostedFile类的文档(表示在ASP.NET中上传到服务器的文件)指定:

  

文件以MIME格式上传   multipart / form-data格式。通过   默认,所有请求,包括表单   字段和上传的文件,大于   相反,256 KB被缓冲到磁盘   而不是保存在服务器内存中。