如何在java中从inputstream读取json对象?
这是示例输入数据。在servlet中,我使用以下过程将inputstream转换为JSONObject如何在java中从inputstream读取json对象?,java,json,servlets,Java,Json,Servlets,这是示例输入数据。在servlet中,我使用以下过程将inputstream转换为JSONObject { "first": "value", "second": "value", "third": { "fourth": "value", "fifth": "value" } }
{
"first": "value",
"second": "value",
"third": {
"fourth": "value",
"fifth": "value"
}
}
但它没有给出预期的输入数据。输入内容是这样更改的
StringBuilder builder = new StringBuilder();
String line;
BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream()));
while((line = reader.readLine()) != null) {
builder.append(line);
}
JSONObject content = new JSONObject(builder.toString());
有人能帮我解决这个问题吗?既然JSON是一种基于文本的格式,而且您似乎在试图解析它之前从inputstream中读取了整个文本,我想说JSON字符串的源代码已经发生了变化。你能分享一下json是如何生成的吗?看起来您有一个多步骤序列化,它将JSON字符串放入Java对象中,然后这些对象也被序列化,因此JSON字符串被转义。@Thomas,输入JSON不是生成的JSON。我使用restclient调用servlet程序。在这个restclient中,我手动输入输入数据并将其发送到服务器。
{"first": "value", "second": "value", "third": "{\"fourth\": \"value\", \"fifth\": \"value\"}"}