【发布时间】:2011-11-05 11:34:04
【问题描述】:
我正在尝试使用 HTML5 的 XMLHttpRequest 上传文件。
这是我的代码:
var xhr = new XMLHttpRequest();
xhr.open("POST", "receive.aspx", true);
//xhr.setRequestHeader("Content-Type", "multipart/form-data");
xhr.setRequestHeader("Content-Type", "application/octet-stream");
xhr.send($("#fileobject").files[0]);
在服务器端,我得到0 的Request.Files.Count。但是,如果我读取输入流,我会得到文件的标题,如下所示:
------WebKitFormBoundarylAWVSRo5qeSpsnzn Content-Disposition:
form-data; name="fileToUpload"; filename="a.txt" Content-Type:
application/octet-stream
Testing
------WebKitFormBoundarylAWVSRo5qeSpsnzn--
上传的文件只包含“Testing”一词。
服务器代码:
Stream inputStream = Request.InputStream;
FileStream fileStream = new FileStream("c:\\test.txt", FileMode.OpenOrCreate);
inputStream.CopyTo(fileStream);
fileStream.Close();
我的客户端 Javascript 中是否缺少任何未填充服务器上的 Request.Files 对象的内容?或者有什么方法可以只读取没有标题的文件内容?
【问题讨论】:
标签: javascript asp.net html file-upload