ASP.NET 文件上传 - 验证

Posted

技术标签:

【中文标题】ASP.NET 文件上传 - 验证【英文标题】:ASP.NET File upload - Validation 【发布时间】:2010-12-27 08:52:15 【问题描述】:

在我们的应用程序中,我们使用 asp.net FileUpload 控件来上传文件。

要求是,用户只能上传“.doc、.xls、.pdf”文件。

系统不应该允许他上传其他文件。为此,我们正在验证上传文件的扩展名。如果它无效,则抛出错误消息..这很好..

但如果我将任何 exe 文件更改为 .doc 文件,则系统允许上传。这不应该发生。

有什么方法可以验证文件的内容而不是扩展名..?

【问题讨论】:

hmh..... 看来您永远不会将我们的回复标记为答案。 【参考方案1】:

在*** 上查看此问题/答案。我相信这是一个重复的问题。

另外,请查看文件的magic number,尤其是如果您只是想确定该文件是否是少数可接受的类型之一。 Magic number Wikipedia

【讨论】:

+1 文件签名检查方法似乎是一个很好的解决方案。【参考方案2】:

Uploadify 是我发现的一个很好的文件上传工具,它允许您指定允许用户在上传文件时看到的扩展名。它还有很多其他很酷的选项,而且它是高度可定制的。它使用 jquery 和 flash 的组合来允许用户一次上传多个文件(如果需要)。

【讨论】:

以上是关于ASP.NET 文件上传 - 验证的主要内容,如果未能解决你的问题,请参考以下文章

asp.net怎么用上传控件,上传图片!

Asp.net Core-在使用 javascript 或 C# 上传之前选择和验证 excel 文件?

asp.net多文件上传并把路劲保存到SQL数据库

使 ASP.Net 文件上传安全

KindEditor 文件上传漏洞验证

KindEditor 文件上传漏洞验证