gpt4 book ai didi

java - JSON 数据限制

转载 作者:太空宇宙 更新时间:2023-11-04 14:47:32 25 4
gpt4 key购买 nike

我们在 Tomcat 上运行 grails 2.2.4 应用程序,它与用户摄像头和按键配合使用,使用 Javascript 在客户端收集一些数据并使用 POST 发送。

在收集数据的 View 中,我们有:

<g:form name="testResultsForm" id="testResultsForm" controller="customer" action="thankYou" method="post">
<h3>Dummy data!</h3>

<input type="text" style="visibility: hidden" name="testResults" id="testResults"/>

<button type="submit" class="btn btn-default">Submit dummy data</button>
</g:form>

在JS中,我们将所有相机数据分配给这个html元素并提交表单:

TestUtils.setValue('testResults', sendData);
$("#testResultsForm").submit();

在 grails Controller 中,我们使用以下行来解析 JSON:

def data = JSON.parse(params.testResults)

一切都按预期进行,除非用户花费比正常时间更长的时间并输入大量按键。错误看起来类似于:

2014-06-14 01:22:14,323 [http-8443-16] ERROR (org.codehaus.groovy.grails.web.errors.GrailsExceptionResolver) - JSONException occurred when processing request: [POST] /qbcheck/customer/thankYou
Expected a ',' or ']' at character 524288 of {"patkey":"","test_version":"1.4","data_version":"1.3","patientid":"","test_date":"","test_duration":0,"gender":"","dob":"","fov":62,"fps":26,"scale_factor":0,"country":46,"camera_data":{"x":[353,353,353,353,3......

它总是在字符 524288 处失败。这导致我们调查可能存在数据量限制,我们查看了 Tomcat,发现它使用 maxpostsize 属性默认允许 2MB 数据。为了确定起见,我们仍然将其更新为更大的数字。同样,我们尝试查看 Grails 和 JS 端,但没有发现任何限制。

正在寻找这方面的任何指示。我们可以根据需要提供更多详细信息。

最佳答案

我们发现 html“输入”的硬限制为 512 KB。理想情况下,当我们尝试通过 JS 将更多数据分配给输入值时,我们应该收到某种错误/警告。然而,这并没有发生

因此我们更改了之前定义的输入:

<input type="text" style="visibility: hidden" name="testResults" id="testResults"/>

到文本区域:

<textarea style="visibility: hidden" name="testResults" id="testResults"/>

这使我们能够传输大于 512 KB 的数据。

关于java - JSON 数据限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24232738/

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