java - 如何在 Java 中操作 HTTP json 响应数据

标签 java json http httpresponse

HttpGet getRequest=new HttpGet("/rest/auth/1/session/");
getRequest.setHeaders(headers);
httpResponse = httpclient.execute(target,getRequest);

entity = httpResponse.getEntity();

System.out.println(EntityUtils.toString(entity));

输出为json格式如下

----------------------------------------
{"session":{"name":"JSESSIONID","value":"5F736EF0A08ACFD7020E482B89910589"},"loginInfo":{"loginCount":50,"previousLoginTime":"2014-11-29T14:54:10.424+0530"}}
----------------------------------------

我想知道的是如何使用 Java 操作这些数据而不将其写入文件? 我想在我的代码中打印名称、值

首选 Jackson 库,但任何库都可以。

提前致谢

最佳答案

您可以使用 this JSON将 json 字符串解析为 JSONObject 并从该对象读取值的库,如下所示:

JSONObject json = new JSONObject(EntityUtils.toString(entity));
JSONObject sessionObj =  json.getJSONObject("session");
System.out.println(sessionObj.getString("name"));

您需要从要读取值的位置读取该对象。在这里,您需要 session 对象内的 name 参数的值,因此您首先使用 getJSONObject(KeyString)session 的值作为 JSONObject 获取。并使用函数 getString(KeyString) 从该对象中读取 name 值如上所示。

希望这对你有帮助。

关于java - 如何在 Java 中操作 HTTP json 响应数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27201201/

相关文章:

java - 永远在后台运行服务

java - SQLException : Protocol violation. Oracle JDBC 驱动程序问题

java - Spring 集成: downloading only new or updated files from FTP server?

java - 安卓工作室。仅使用 onTouchListener 单击按钮/ ImageView 时应用程序崩溃

http - 不直接导致数据操作但触发操作的 RESTful HTTP 请求是否应该具有 GET、PUT 或 POST 操作?

javascript - For 循环仅在某些地方调用对象中的最后一个数组,而在其他地方则不调用

java - 简单 Volley 字符串请求的变量 URL

java - 玩Java,如何读取本地JSON文件并在body上显示为列表?

jquery - 提交后的jqGrid

http - Pragma 和 Cache-Control header 之间的区别?