Вложенный анализ JSON в JavaScript

Я использую приведенный ниже код для вызова REST OUTBOUND, и это работает, как ожидалось. но я пытаюсь разобрать второе тело ответа, но я не могу получить значения под объектами.

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-names

1 ответ

Свойство objects является массивом объектов. Эта строка должна измениться с:

gs.print(JsonObject1.objects.uid);

чтобы:

gs.print(JsonObject1.objects[0].uid);

Чтобы получить данные из свойств первого объекта, или вы можете перебрать их, если вам нужно выполнить операцию со всеми возвращенными объектами.

Другие вопросы по тегам