我正在使用下面的代码进行REST出站调用,这是预期的工作。但是我正在尝试解析第二个响应体,但是我无法检索到对象下的值。
try {
var r = new sn_ws.RESTMessageV2('test', 'post');
var response = r.execute();
var responseBody = response.getBody();
var httpStatus = response.getStatusCode();
gs.print(response.getBody());
gs.print(response.getStatusCode());
var JsonObject = JSON.parse(responseBody);
var sid = JsonObject.sid;
gs.print(sid);
var r1 = new sn_ws.RESTMessageV2('x_257605_test.gateways', 'POST' );
r1.setRequestHeader("X-chkp-sid",sid );
var response1 = r1.execute();
var responseBody1 = response1.getBody();
var httpStatus = response1.getStatusCode()
gs.print(response1.getBody());
var JsonObject1 = JSON.parse(responseBody1);
gs.print(JsonObject1.objects.uid);
}
catch(ex) {
var message = ex.message;
}
请参阅示例json响应,我需要提取uid/name/cluster-member name等对象下的值
发布于 2018-07-30 03:24:00
objects属性是一个对象数组。此行应从以下位置更改:
gs.print(JsonObject1.objects.uid);
至:
gs.print(JsonObject1.objects[0].uid);
从第一个对象的属性中获取数据,或者,如果需要对返回的所有对象执行操作,则可以遍历这些属性。
https://stackoverflow.com/questions/51583737
复制相似问题