【问题标题】:Maximum size of ajax returned dataajax 返回数据的最大大小
【发布时间】:2011-11-15 14:25:47
【问题描述】:

各位程序员,我以前也问过这个问题,但没有得到确切的答案。问题是:在我在某处遇到一些限制之前,我可以安全地从 ajax post call 返回多少数据?

场景基本上是这样的:前端对 php 控制器/模型进行 ajax 调用。控制器从数据库中返回一个或多个行,或者返回一些代表一些报告的 html,这些报告将存储在一个 js 字符串 var 中以供稍后显示。

我在这里看到两个限制:通过 ajax 调用返回的数据大小和 js var 可以容纳的最大大小。

有人知道限制是什么吗?

谢谢

【问题讨论】:

    标签: javascript ajax


    【解决方案1】:

    看到这个答案:Javascript maximum size for types?

    简而言之,除非浏览器另有规定,可变大小不受限制。至于Ajax:没有限制,除非在服务器端定义(例如this one)。

    【讨论】:

    • 谢谢罗伯。知道如何在 .NET 以外的环境中设置限制吗?
    • 我不知道任何其他服务器定义的响应限制。您只需在您的服务器(环境)上运行一项测试即可确认我的声明。可以将服务器配置为拒绝太大的请求,使用 .htaccess 例如:LimitRequestBodyLimitXMLRequestBody
    【解决方案2】:

    我认为您列出的任何一个因素都不是问题。我会看的是:

    • 用户愿意等待响应的时间。此外,您的服务器端编程语言或网络服务器可能会对任何一个请求的长度施加限制。
    • 客户端拥有的 RAM 量。即使没有可变大小限制,最终计算机也会耗尽空间。

    在这些情况下,您最好一次提供较小的数据块并允许用户加载他们需要的数据(通过粒度 [显示摘要并让他们向下钻取] 或分页/搜索)。没有人愿意等待 10 分钟来加载网站,而且 HTTP 并不能真正很好地处理大型请求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-15
      • 2018-09-08
      • 1970-01-01
      • 2014-01-19
      • 1970-01-01
      • 1970-01-01
      • 2010-12-27
      • 2013-04-19
      相关资源
      最近更新 更多