在 HTML 中,您需要一个输入 type="file" 的表单,并且表单的 enctype 属性设置为“multipart/form-data”,而不是默认的“application/x-www-form-urlencoded”。
Multipart/form-data 是在RFC 2388中定义的,它的行为与迄今为止您在本实验中解析的 application/x-www-form-urlencoded 不同,尽管它非常简单。RFC 应该为您提供复制 HttpRequest.Files 属性在 ASP.NET 中的工作方式所需的所有知识。
对此的扩展,尝试使用 POST 和 PUT 从页面中的 XMLHttpRequest 或 .NET 客户端应用程序中的 HttpWebRequest 发送流(您可能必须更改 IIS 设置以允许 PUT 通过),因为这是工作的重叠连同您在这里的实验,将涵盖一些即使在使用所有工具包时也具有实际适用性的知识。另一个扩展是在没有框架帮助的情况下尝试在RFC2617中实现这两种方案的双方(有时服务器端真的很有用)。
对此进行实验的荣誉,它应该带来真实的经验来支持你可以从阅读RFC 2616中学到的东西(尽管这对于任何从事网络工作的人来说仍然是绝对重要的,因为阅读将涵盖一些你的实验没有的案例触摸,并解释任何在你的结果中看起来很奇怪的东西)。