Как извлечь переменную из XML с помощью Postman?

Я пытаюсь извлечь SessionId из XML, который возвращается из SOAP API.

Я прочитал документацию почтальона (несколько раз), но это было не самое полезное для достижения моей цели.

в нескольких блогах было предложено преобразовать XML в JSON, а затем выбрать токен и его значение оттуда, но это тоже не помогло.

я использовал следующее В своем тесте:

var jsonObject = xml2Json(responseBody);
postman.setGlobalVariable("Session_Id", jsonObject.SessionID);

вышеуказанное создало переменная "Session_Id", но фактически не присвоила ей значение. Я в тупике.

Я определенно извлекаю данные из API, и это можно просмотреть в ответе "тело" почтальона.

1 ответов


чтобы извлечь переменную из XML с помощью Postman, сначала преобразуйте XML в JSON, используя метод xml2json converter:

var responseJson = xml2Json(responseBody);

(где "responseBody" - это ваше тело xml.) Затем используйте консоль.метод log для вывода данных JSON, как таковой:

console.log(responseJson);

обязательно следуйте этому руководству по включение инструментов Chrome Dev в Postman

внутри вашего тестового бегуна запустите тест, затем щелкните правой кнопкой мыши и" проверьте " в любом месте бегуна. Выберите вкладку "консоль" после запуска инструментов разработки Chrome. Разверните часть "объект".

затем разверните (разверните), пока не увидите свойство, данные которого вам нужны. После этого установите переменную, добавив каждый уровень детализации к нужному параметру:

postman.setGlobalVariable("Session_Id", responseJson.UserSessionToken.SessionID); 

в этом случае "responseJson" является объектом, "UserSessionToken" был следующим уровнем в детализации, и SessionId был параметром, который мне нужен в этом.