gpt4 book ai didi

java - Spring JSON反序列化字符限制

转载 作者:太空宇宙 更新时间:2023-11-04 06:10:20 27 4
gpt4 key购买 nike

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

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

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

非常感谢任何想法!

最佳答案

这取决于很多因素,包括

  • 底层 JSON 反序列化施加的任何特定限制。您很可能正在使用 Jackson,据我所知,它没有任何限制
  • 容器特定限制,您没有提到您正在使用什么容器,但例如 Tomcat 有一个 maxPostSize .
  • 前端 Web 服务器限制,假设 Tomcat 位于 apache 后面。 Apache 有 LimitRequestBody属性(property)。
  • 内存,特别是将字符串解析为对象的堆大小
  • 时间,反序列化时间过长导致 HTTP 请求与客户端超时的边缘情况。

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

关于java - Spring JSON反序列化字符限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28825822/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com