【发布时间】:2016-06-07 22:56:03
【问题描述】:
如何限制在 HTML5 中使用的文件类型(例如 .pem、.cer)。接受标签不能完全达到目的,因为我可以输入其他文件类型并且文件被上传。该字段是输入类型“文件”。
【问题讨论】:
-
这与百里香无关。 thymeleaf 是模板引擎。它只负责生成 HTML
-
“输入其他文件类型”是什么意思?
标签: html html-input
如何限制在 HTML5 中使用的文件类型(例如 .pem、.cer)。接受标签不能完全达到目的,因为我可以输入其他文件类型并且文件被上传。该字段是输入类型“文件”。
【问题讨论】:
标签: html html-input
例如所有音频类型:
<input type=file accept="audio/*">
1 种音频类型:
<input type=file accept="audio/mp3">
【讨论】:
HTML5 不提供豁免特定文件类型的方法。
【讨论】:
问。如何在 HTML5 中限制文件类型?
这不可能万无一失。
问。为什么?
input 标签上的accept 属性只是一个辅助属性。它不是一个验证工具(请参阅this page 上的提示以澄清这一点)。因此,期望 accept 属性来验证文件是不现实的。accept 属性的支持因网络浏览器(甚至是最新版本)而异,因此另一个不依赖此属性来验证上传文件的原因。问。那么解决方案是什么?
始终在服务器端验证数据。上传与其他类型的数据没有什么不同。即使客户端上有验证数据的保护措施,也必须始终在服务器端进行验证。使用客户端选项作为助手,但不要过度依赖它们。
【讨论】: