这是我想通过 HttpPost 发送到服务器的 Json 格式
{
"key1":"value2",
"key2":"value2" ,
"key3":"value3",
"key4":"value4",
"key5":[
{"key5.1.1":"value5.1.1"},
{"key5.2.1":"value5.2.1"},
{"key5.3.1":"value5.3.1"},
{"key5.4.1":"value5.4.1"}
]
}
对于较小的 Json,它工作正常,但问题是当 key5 的 jsonarray 增加它抛出异常的大小时。那么我们如何使用 Http Post 将大的 JSON 字符串发送到服务器呢?
我正在使用 maven 和 Jboss7.1.1.Final 。
我需要在 jboss 配置中进行任何更改以接受大长度的 JSON 对象吗?
也正在使用 Webservice 客户端通过 HttpPost 使用以下字符串格式发送上述数据。
HttpPost request = new HttpPost(BASE_URL + SEND_URL + "/" + URLEncoder.encode(new Gson().toJson(input)));
request.addHeader("content-type", "application/x-www-form-urlencoded");
HttpResponse response = httpClient.execute(request);
并且它仅对更大长度的 Json String 引发错误
java.net.SocketException:在 org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:149) 在 org.apache.http 的 java.net.SocketInputStream.read(SocketInputStream.java:168) 连接重置.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:110) 在 org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:264) 在 org.apache.http.impl.conn.LoggingSessionInputBuffer.readLine (LoggingSessionInputBuffer.java:115) 在 org.apache.http.impl.conn.DefaultResponseParser.parseHead(DefaultResponseParser.java:98)
我检查了以下链接,但没有得到解决方案
也根据http://geekswithblogs.net/frankw/archive/2008/08/05/how-to-configure-maxjsonlength-in-asp.net-ajax-applications.aspx JSON不限制其Jboss的大小