Power Automate Send an Email(V2) 发送自适应卡片时特殊字符乱码如何处理?
解决方法
这个问题属于Power Automate动态内容插入时的编码转换异常,不是微软官方待修复的缺陷,可通过以下配置解决:
- 先确认
Send an Email (V2)操作的Is HTML参数已设置为是,这是HTML格式邮件正常识别编码的基础前提。 - 不要直接插入Compose_2的输出内容,对输出内容做一次编码再解码的强制转码处理,将你script标签内的内容替换为以下表达式:
@{decodeUriComponent(encodeUriComponent(outputs('Compose_2')))}
这个操作会强制Power Automate以UTF-8格式解析特殊字符,避免转码过程中把ä、ö、å这类字符替换为问号。
- 若上述操作后仍存在乱码,在你的邮件HTML代码最开头补充编码声明,最终完整代码如下:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <p>message below</p> <script type="application/adaptivecard+json" charset="UTF-8"> @{decodeUriComponent(encodeUriComponent(outputs('Compose_2')))} </script>
明确告知邮件客户端整个邮件内容的编码规则。
修改完成后可先触发一次测试流,查看Send an Email (V2)操作的运行历史输入项,确认邮件内容中的特殊字符已正常显示,再查收邮件验证最终效果。
内容的提问来源于stack exchange,提问作者Sp4t4
相关产品推荐
相关产品推荐

