0

我在查看可操作消息时遇到问题。区域字符未正确显示(?而不是实际字符),即使我在meta电子邮件的 HTML 头部内的标记中添加了有关 UTF-8 编码的信息:

<meta http-equiv="Content-Type"content="text/html;charset=UTF-8">

然而,奇怪的是,当我将字符放入电子邮件正文时,它们会正确呈现。此外,即使放入一个字符,比如说,日语,也会使 Actionable Message 中的所有日语字符正确呈现(但不是,例如,西里尔字符)。

这让我想,这是 Outlook(OWA 和桌面)呈现消息的问题,而不是编码本身。看起来好像 Outlook 会自动选择正确显示邮件的最小字符集,但它不会将可操作邮件内容检测为邮件的一部分。

到目前为止,我想到的解决方法是将区域字符放入不可见的 div 中(以便它们“强制”字符集):

<div style=\"display:none;font-size:1px;line-height:1px;max-height:0px;max-width:0px;opacity:0;overflow:hidden;mso-hide:all;\">łśあД&lt;/div>

这看起来真的很可怕,或者将备份消息内容添加到 HTML 的正文中。

所以我的问题是,我是否缺少任何不能正确呈现所有 UTF-8 字符的设置,无论正文如何?

我正在通过 EWS 托管 API 发送消息。我尝试在元标记中设置其他字符集。

4

1 回答 1

1

您可以尝试使用以下脚本通过 SMTP 发送相同的有效负载吗?

https://github.com/tony-zhu/SendActionableMessage

我们用这个脚本做了一些国际化测试,所有字符都正确显示。

于 2018-08-29T18:35:37.137 回答