You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Logic App中将JSON字符串转为美观格式并在邮件中统一显示?

解决Logic App Send_an_email(V2)中Message1与Message2格式不一致问题

问题分析

你的邮件Body配置里,Message1和Message2都被包裹在<pre><code>标签中,但显示效果不一致,核心原因是变量Message1的内容格式与Message2不匹配,或是当前HTML结构混用了<br>和原生换行,导致pre标签的预格式化逻辑冲突。

解决方案

根据让两者显示效果一致的需求,提供以下3种针对性方案:

方案1:统一变量内容格式

如果Message2是纯文本(换行用\n分隔),把Message1的内容转换成相同格式:

  • 在Logic App中修改Message1的引用方式,用replace函数替换HTML换行符为原生换行:
    @{replace(variables('Message1'), '<br>', '\n')}
    
  • 确保Message1内容里没有多余HTML标签,保持纯文本格式。

方案2:修正邮件Body的HTML结构

<pre>标签会保留原生换行和空格,不需要用<br>,修改后的Body配置如下:

"Send_an_email_(V2)": {
    "inputs": {
        "body": {
            "Body": "&lt;p&gt;&lt;br&gt;&lt;/p&gt;\n&lt;pre&gt;&lt;code&gt;Message 1\n\n@{variables('Message1')}\n\nMessage 2\n\n@{variables('Message2')}&lt;/code&gt;&lt;/pre&gt;",
            "Importance": "Normal",
            "Subject": "Test",
            "To": "test@test.com"
        }
    }
}

这里用\n\n实现空行,完全遵循pre标签的预格式化规则,让两个变量的内容以相同逻辑渲染。

方案3:改用普通HTML排版(若无需代码风格)

如果不需要代码样式的显示,去掉<pre><code>标签,改用HTML段落标签:

"Send_an_email_(V2)": {
    "inputs": {
        "body": {
            "Body": "&lt;p&gt;Message 1&lt;/p&gt;\n&lt;p&gt;@{variables('Message1')}&lt;/p&gt;\n&lt;p&gt;Message 2&lt;/p&gt;\n&lt;p&gt;@{variables('Message2')}&lt;/p&gt;",
            "Importance": "Normal",
            "Subject": "Test",
            "To": "test@test.com"
        }
    }
}

这种方式会让变量中的HTML格式(若有)被正确解析,实现美观的段落排版。


内容的提问来源于stack exchange,提问作者Steve Moro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 15:41:47