微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javax.servlet.HttpServletRequest.getContentLength()只返回int

为了处理HTTP POST或PUT中的大型请求体,依赖于HttpServletRequest.getContentLength()并不是一个好主意,因为它只返回整数值,或者对于请求主体>返回-1. 2GB.

不过,我没有理由,为什么不允许更大的请求机构. RFC 2616说

Any Content-Length greater than or equal to zero is a valid value.

使用HttpServletRequest.getHeader(‘content-length’)并将其解析为Long,是否有效?

解决方法

是的,这是一个很好的方法 – 使用getHeader(“Content-Length”)(大小写)和Long.parseLong(..).我相信这是集装箱正在做的,但是它被限制在int由serlvet规格.

原文地址:https://www.jb51.cc/java/122983.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐