Java 从jersey客户端响应读取单个值
嗨,我正在使用下面的代码调用一个APIJava 从jersey客户端响应读取单个值,java,jackson,jersey,jersey-2.0,jersey-client,Java,Jackson,Jersey,Jersey 2.0,Jersey Client,嗨,我正在使用下面的代码调用一个API Client client=ClientBuilder.newClient(); WebTarget target = client.target(dynamicEntityURL); String response = target.request().header("Authorization", "Bearer "+readToken.tokenMethod()
Client client=ClientBuilder.newClient();
WebTarget target = client.target(dynamicEntityURL);
String response = target.request().header("Authorization", "Bearer "+readToken.tokenMethod()
.getAccess_token())
.get(String.class);
System.out.println(response);
输出为:-
{"count":1,"limit":100,"totalResults":1,"hasMore":false,"items":[{"id":"B183C87E-7067-4BC9-BD9D-5AFA145532F3","name":"DynamicEntityTesting","version":"1.0","status":"PUBLISHED"}],"links":[{"rel":"self","href":"https://idcs-oda-9417f93560b94eb8a2e2a4c9aac9a3ff-t0.data.digitalassistant.oci.oc-test.com/api/v1/skills/?name=DynamicEntityTesting"},{"rel":"canonical","href":"https://idcs-oda-9417f93560b94eb8a2e2a4c9aac9a3ff-t0.data.digitalassistant.oci.oc-test.com/api/v1/skills/?name=DynamicEntityTesting"}]}
在上述输出中,我只需要id
,它位于items
下。我知道我可以创建POJO
并使用getter/setter
传递它并读取单个值。但我必须创建具有所有输出参数的POJO。我只需要id
就可以传递到下一个API
。如何获取id
的值?您可以这样做
JsonObject response = target.request().header("Authorization", "Bearer "+readToken.tokenMethod()
.getAccess_token())
.get(JsonObject.class);
JsonArray jsonArray = response.getJsonArray("items");
System.out.println(jsonArray.getJsonObject(0).getString("id"));