在内联代码连接器逻辑应用程序中查找 HTML 元素值

Find HTML Element value in Inline Code Connector Logic App

我正在尝试从包含 json、xml 和 html 的 API 多部分响应中获取值。另外 HTML 在该响应中的元素上没有任何 id 和任何 class 。我想在一个元素中获取完整的 table,并希望从它的 tr 中获取值。请建议我如何在 逻辑应用程序 .

中的 inline code 中执行此操作
var response = workflowContext.trigger.outputs.body; // API Response

var multiBody = response.body.$multipart[4].body;    // multipartBody

var table = multiBody.                               // How to get table section and get its tr values

return table;

我已经编写了要在 inline code 连接器中实现的 javascript 代码。我的密码是

var rows = document.getElementsByTagName('table')[4].rows;
var firstRow = rows[0];                     // LTV/CLTV Row
var firstCell = firstRow.cells[1];          // LTV/CLTV Index
var firstText = firstCell.innerText;
var firstValue = firstText.substring(0, firstText.indexOf('/') - 1);        // LTV
var secondValue = firstText.substring(firstText.indexOf('/') + 2, firstText.lastIndexOf('/') - 1);      // CLTV

请帮我看看我该怎么做。

此外,正如文档中提到的,我们可以在内联代码连接器中编写 javascript 那么为什么 getElementById、getElementByTagname 函数在这里不起作用。

内联代码操作为 JavaScript 运行 NodeJS,它实际上没有 DOM 可以像浏览器一样使用的对象。

相反,您将不得不解析 DOM 或仅执行字符串搜索以获得您需要的内容。

解析 DOM 当然不会那么简单,如果 string/regex 搜索不会,最好在 Azure 函数中使用类似 jsdom 的东西剪给你。