Как получить значение из тела ответа JSON и установить его в качестве переменной среды в Postman - PullRequest
0 голосов
/ 26 сентября 2019

При обращении к службе в Postman я получаю несколько блоков в теле ответа, мне нужно взять одно значение элемента и сохранить его в переменной Environment, чтобы использовать его в следующем запросе.

Пожалуйста, помогитепринять значение depositInfoId и его необходимо установить в переменной среды.

Я пробовал ниже 1, но не работал.

pm.environment.set("depositInfoId",pm.response.json().depositInfoList);
pm.environment.set("depositInfoId",pm.response.json().depositInfoList.depositInfoId);

Ниже приведен пример тела ответа снесколько блоков:

{
    "qualStatus": "PASS",
    "blackList": {
        "blackListStatus": "PASS",
        "blackListStatusDesc": "CustomerName Match Not Found."
    },
    "fraudCheck": {
        "linesActivated": null,
        "status": "NA",
        "activationDetails": null,
        "errorDetails": null,
        "creditCheck": {
            "intlDialingEligibilityIndicator": true,
            "intlRoamingEligibilityIndicator": true,
            "creditCheckDetails": [{
                "linesApproved": 1,
                "approvedTerm": "24",
                "accountSpendingLimit": null,
                "lineDepositAmount": null,
                "securityDepositeAvailableIndicator": null,
                "creditLimitProgramIndicator": null,
                "noDeviceProgramIndicator": null,
                "creditOptionId": null
            }],
            "status": "APPROVED",
            "errorDetails": null,
            "accountNumber": "12345678",
            "creditAssessmentID": "123456",
            "contractTypes": null,
            "esimProductCode": null
        }
    },
    "depositInfoList": [{
        "depositInfoId": 863,
        "transactionID": "123456",
        "lineDepositAmount": null,
        "linesActivated": "1",
        "internationalDailingDeposit": null,
        "approvedTerm": "24",
        "depositSubscriberCount": null,
        "spendingLimit": null,
        "creditAssessmentId": "123456",
        "securityDepositAvailable": null,
        "creditLimitIndicator": null,
        "noDeviceProgramIndicator": null,
        "creditOptionId": null
    }]
}

В значениях переменных среды сохраняются, как показано ниже, когда я использую первый код.depositInfoId - [object Object] - [object Object]

Когда я использую второй код, поля в нем не сохраняются.

1 Ответ

0 голосов
/ 26 сентября 2019
pm.response.json().depositInfoList

Это сохранит все данные JSON depositInfoList в переменной среды, и, следовательно, когда вы попытаетесь получить к ним доступ, появится объект Object.

pm.response.json().depositInfoList.depositInfoId

Это не имеет смысла как depositInfoList - это массив, вы должны предоставить индекс, когда хотите извлечь значения из массивов.

pm.response.json().depositInfoList[0].depositInfoId

Это должно работать, так как вы пытаетесь получить значение свойства первой записи массиваdepositInfoList.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...