从 XML 响应中提取一个值并将其设置为 Postman 中的全局变量

Anu*_*shA 5 xml postman

我正在尝试从成功的 API 请求中提取一个值,该请求正在使用 Postman 发送 XML 响应。以下是我尝试从响应中获取所需值的方法。

var jsonObject = xml2Json(responseBody);
console.log(jsonObject);

postman.setGlobalVariable("Active_SAML", jsonObject.bankidCollectResponse.SAMLReferens); 
console.log(pm.globals.get("Active_SAML"));
Run Code Online (Sandbox Code Playgroud)

在“测试”选项卡中编写的脚本和控制台注销如下。

在此处输入图片说明

但是当我执行程序时,出现以下错误。

评估测试脚本时出错:TypeError: Cannot read property 'SAMLReferens' of undefined

我不确定我在哪里做错了。有人可以指出我吗?

Anu*_*shA 8

感谢@ChathurangaChandrasekara 的评论,我确实能够弄清楚他们期望的格式。

// Convert XML output to JSON format
var jsonObject = xml2Json(responseBody);

// Since the converted JSON format is having Envelope and Body tags we need following format
var activeSamlVal = jsonObject['SOAP-ENV:Envelope']['SOAP-ENV:Body'].bankidCollectResponse.SAMLReferens;
console.log(activeSamlVal)

// Assigning the extracted value in to a global variable
pm.globals.set("SAML_key", activeSamlVal);
console.log(pm.globals.get("SAML_key"));
Run Code Online (Sandbox Code Playgroud)