У меня есть тело ответа, в котором есть ключ "response". Я пытаюсь получить значение TransactionLogId.
{
"response": "{\"messageHeader\":{\"transactionLogId\":\"DCBB028A_B543_4DF6_B8C0_DF1215324841\",\"action\":\"BOOK\"},\"properties\":{\"contextObjects\":[{\"recordId\":\"a0D1U000001bFMPUA2\",\"statusSummary\":{\"FaultRecInfoArray\":{\"FaultMsgRec\":{\"ErrLoc\":\"DDACCTADD\",\"ErrCat\":\"Error\",\"ErrElem\":\"AccountId.AcctId AccountId.AcctType\",\"ErrDesc\":\"Account already exists\",\"ErrElemVal\":\"209171/D\",\"ErrCode\":\"2\"}}},\"externalId\":\"209171\",\"relatedObjects\":[{\"recordId\":\"0011U0000052ESEQA2\",\"statusSummary\":\"Already existed on core.\",\"externalId\":\"JAA0100\",\"statusCode\":\"BOOKED\"}],\"statusCode\":\"NOT_PERSISTED\"}]}}"
}
Вот скрипт:
var jsonData = JSON.parse(responseBody);
var setId = JSON.parse(JSON.stringify(jsonData.response));
console.log("Id:"+setId.transactionLogId);
Мой вывод на консоль:
Id:undefined
Я изменил console.log на console.log ("Id:" + setId); с выходом консоли:
Id:{"messageHeader":{"transactionLogId":"DCBB028A_B543_4DF6_B8C0_DF1215324841","action":"BOOK"},"properties":{"contextObjects":[{"recordId":"a0D1U000001bFMPUA2","statusSummary":{"FaultRecInfoArray":{"FaultMsgRec":{"ErrLoc":"DDACCTADD","ErrCat":"Error","ErrElem":"AccountId.AcctId AccountId.AcctType","ErrDesc":"Account already exists","ErrElemVal":"209171/D","ErrCode":"2"}}},"externalId":"209171","relatedObjects":[{"recordId":"0011U0000052ESEQA2","statusSummary":"Already existed on core.","externalId":"JAA0100","statusCode":"BOOKED"}],"statusCode":"NOT_PERSISTED"}]}}
Я не уверен, почему я не могу заставить его разобраться правильно. Есть идеи?