我有一个客户端应用程序发出 POST
请求asp.net URL
(它用于将文件上传到.NET
)。
如何让asp.net页面接收到这个请求并将其保存为文件?
@ Darin Dimitrov 我已经尝试过您的代码,但我500 internal server error
知道如何跟踪它?!
如果客户端使用multipart/form-data
请求编码(这是上传文件的标准),您可以从Request.Files
集合中检索上传的文件。例如:
protected void Page_Load(object sender, EventArgs e)
{
foreach (HttpPostedFile file in Request.Files)
{
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
file.SaveAs(path);
}
}
或者如果您知道客户端使用的名称,您可以直接访问它:
HttpPostedFile file = Request.Files["file"];
另一方面,如果客户端不对请求使用标准编码,您可能需要从Request.InputStream
.
您还可以使用保存整个请求
HttpContext.Current.Request.SaveAs(filename,includeHeaders)
假设数据没有作为 multipart/form-data 上传