【发布时间】:2018-05-01 17:01:05
【问题描述】:
下面是java中http响应的截图——
以下是响应的文本形式:
{
"LightGingerTheTextResult": [
{
"Confidence": 4,
"From": 0,
"LrnFrg": null,
"LrnFrgOrigIndxs": [],
"Mistakes": [
{
"CanAddToDict": false,
"From": 0,
"To": 0
}
],
"ShouldReplace": true,
"Suggestions": [
{
"LrnCatId": 12,
"Text": "An"
},
{
"LrnCatId": 45,
"Text": "A"
}
],
"To": 0,
"TopLrnCatId": 12,
"Type": 3,
"UXFrgFrom": 0,
"UXFrgTo": 6
}
]
}
我想提取建议中的“文本”。
这是我对 json 的一部分。我在“finalResult”中得到最终回复-
JSONObject json = new JSONObject();
try
{
StringBuffer response =urllib.urlopen(url);
String finalResponse= response.toString();
System.out.println("final response"+finalResponse);
StringBuffer result=(StringBuffer) json.get(finalResponse);
//finalResult=URLEncoder.encode(result.toString(), "UTF-8");
String finalResult=result.toString();
}
catch (Exception e) {
System.out.println(e.getMessage());
}
【问题讨论】:
-
使用一些对象映射将 json 映射到 POJO,然后简单地访问它的
text属性。 -
或者使用像JSON-P这样的JSON解析器。
-
向我们展示您尝试解决此问题的方法。它有效吗?如果没有,什么不起作用?
-
响应是 JSON 文本(正如你所知道的,因为你已经标记了它),所以使用 JSON 库来处理它。
-
接受响应作为字符串并使用 jsonpath 库。看到这个stackoverflow.com/a/34117168/3295987。但是最好将 json 与 POJO 映射,因为您可能还需要其他字段(如果不是现在,那么将来)
标签: java json httpresponse