繁体   English   中英

Spring JSON反序列化字符限制

[英]Spring JSON deserialization character limit

我试图了解Spring框架将反序列化为对象的JSON数量是否有限制。

我的REST服务接收正文为JSON字符串的POST请求。 Spring框架(3.2.5)会自动将其反序列化为对象,并将该对象作为方法参数提供。 对象的属性之一是数组。 我想在文档中提供一些有关调用者可以包含在对象中的最大数组元素数量的指导。

我知道.NET框架对JSON字符串的大小有可配置的限制,但我不知道在Spring中有任何类似的限制。 我的开发服务器目前正在按要求处理100,000个元素(大约8,000,000个字符),并且还没有崩溃。

任何想法表示赞赏!

这取决于很多事情,包括

  • 基础JSON反序列化施加的任何特定限制。 您最有可能使用的杰克逊(Jackson)没有我所知道的限制
  • 特定于容器的限制,您没有提到正在使用的容器,但是例如Tomcat具有maxPostSize
  • 前端Web服务器限制,例如假设Tomcat位于apache之后。 Apache具有LimitRequestBody属性。
  • 内存,特别是堆大小,用于将String解析为对象
  • 时间,反序列化花费的时间很长,以至于HTTP请求在客户端超时。

您最先遇到的限制是容器特定的限制。 我建议使用容器/前端代理配置来设置合理的限制,以保护自己免受不良客户端的侵害。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM