我需要限制用户附加带有某些扩展名的文件,例如:bat、exe、bin 等。
为此,我相信我需要编写一个 servlet 过滤器。我是 servlet 新手,有人可以指导我如何实现这一目标吗?
使用 Servlet 过滤器是正确的方法吗?
非常感谢任何帮助。 如果需要我提供任何其他信息,请告诉我。
最佳答案
嗯,您始终可以使用 servlet 过滤器来添加某种在 servlet 代码之前运行的验证。这可能是也可能不是正确的方法,具体取决于您如何构建应用程序。这是你的建筑召唤。
实现servlet过滤器的方法很简单,你可以看一下http://www.oracle.com/technetwork/java/filters-137243.html
关于验证输入扩展。您需要这种验证有多可信?请记住,用户在上传文件之前可能总是会使用扩展程序。如果您对此感到放心,则可以以非常简单的方式实现它,只需检查请求中的 Content-Type
header 以获取有效的 mime 类型。
如果您需要更可靠的验证,您将需要使用更像 Mime-Utils 或类似的东西。检查Getting A File's Mime Type In Java
关于java - Servlet Filter 检查附件扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14258201/