使用 Azure 逻辑应用程序在 HTML table 中插入 URL 列

Insert URL column in a HTML table using Azure Logic App

我正在 Azure 上创建一个逻辑应用程序,在此过程中我必须创建一个包含一些数据的 HTML table,将 table 插入电子邮件正文并发送使用 SendGrid 发送电子邮件。

几乎一切正常,除了我的 table 应该有一个包含某些网站的 URL 的列。

问题是 Create HTML table action does not return <a> as HTML tag but &lt;a&gt; and the Send email 的正文(即使它被认为是 HTML 内容)不能 process/interpret 那。

我正在使用 concat(string1, string2 .. ) Expression 构建 URL,我认为它构建正确。输出看起来不错,只有原始输出搞砸了。

Create HTML table 动作 returns 这个:

输出:

原始输出:

<td>&lt;a=&quot;https: ...

这是将输出注入 Send Email 的电子邮件正文的方式:

如果可以将原始输出更改为更 HTML 的格式,电子邮件正文将解析它并以正确的方式显示 URL。 (我不确定我是否表达得很好。但即使我用原始输出创建一个简单的 html 文件,a 标签也会在浏览器中显示为简单文本...)

有什么想法吗?我认为如果我之前替换 concat() 表达式并生成 URL,Generate URL table 的原始输出仍然会弄乱最终结果。

也许如果有办法停止用 &lt;&gt; 替换 <> 它会起作用,但我不知道如何做到这一点..

对于这个问题,我初始化了一个变量来模拟你的情况,我们可以把&lt;换成<,把&gt;换成>。然后发送电子邮件操作将正常工作。请参考以下步骤:

整个表达式为:

replace(replace(body('Create_HTML_table'), '&lt;', '<'), '&gt;', '>')

希望对你有帮助~