file - Struts2上传文件,在发送文件之前验证文件大小和内容类型

标签 file validation upload struts2 size

我对 Struts 2 及其文件上传拦截器有疑问。它已验证我的内容类型和文件大小,但上传过程不会停止。 例如,我的上传限制是 2Mb,用户发送一个 500MB 的文件,拦截器 struts 2 记录该文件太大,但继续上传文件

我想在错误的情况下停止上传过程,因为struts2只有在发送文件完成后才返回到我的页面。

谢谢

最佳答案

在 Struts 中不能 - 因为在 servlet 容器完成处理响应对象之前,Struts 不会获取响应对象。

但是 - 大多数容器都有控制上传文件大小的方法,对于 tomcat 来说,这是 maxPostSize 参数(默认为 2GB) - 据我所知,tomcat 会计算传入字节数,然后退出值被超过。即 Tomcat 将不会继续读取超过 maxPostSize 的内容。其他容器将具有类似的配置参数。我从未使用过它,所以我无法在这里提供任何进一步的帮助。

如果您有嵌套容器/服务(例如,Tomcat 位于 Apache Web Server 后面),请确保配置正确的容器/服务

关于file - Struts2上传文件,在发送文件之前验证文件大小和内容类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12900045/

相关文章:

linux - 在 Linux 中截断文件的前 100MB

java - 分割二进制文件并向每个 block 添加数据?

swift - vapor swift 自定义验证器

java - JAXB 自定义 validator

c - 为什么“while(!feof(file))”总是错误的?

Java:文件[]到JTable

asp.net-mvc - 如何处理 ASP.Net MVC 中的 Model 和 ViewModel 验证

将文件上传到远程服务器的Python脚本

PHP/MYSQL上传,导入.csv文件到mysql-process-table design

iphone - 如何处理使用 ios5 中的调度方法将记录上传到服务器