1

我开发了一个简单的任务窗格插件来测试西里尔字符,但是当使用 body.getAsync() 时,西里尔字符似乎编码不正确。

是否有从电子邮件正文获取 Cyrillic html 的解决方法?这是我正在使用的代码:

var message = Office.context.mailbox.item;
message.body.getAsync(Office.CoercionType.Html, function (result) {
    if (result.status === Office.AsyncResultStatus.Succeeded) {
        $("#gridResult").html(result.value);
    }
});

这是我得到的结果。所有的西里尔字符都搞砸了。 加载项中的西里尔字符问题

编辑

我通过 Visual Studio 调试器运行代码,并result.value在调用.html(). 损坏的值是可见的。使用 F12 开发人员工具附加到 IE 进程时也会发生同样的事情: result.value 问题

4

2 回答 2

2

已发现这是一个错误。它将在即将到来的 C2R 构建更新中得到修复。暂时,如果构建在 16.0.7117.1000 之后,它应该被修复。此内部版本号不是将出现的确切编号,但是当更新出现时,如果该编号在该版本之后,则应该进行修复。

不过,在实际补丁发布之前,我无法确认此修复是否会成功。

MSI Outlook 2016 和 MSI Outlook 2013 的修复程序将在之后发布。一旦计划发布,我将更新这些更新的 KB 和补丁。

于 2016-06-17T20:02:12.130 回答
1

感谢您报告此问题。这是 Outlook Desktop 中的一个回归,修复程序将在大约两个月内提供给客户。与此同时,变通方法是使用 Office.CoercionType.Text 调用 API

var message = Office.context.mailbox.item;
message.body.getAsync(Office.CoercionType.Text, function (result) {
    if (result.status === Office.AsyncResultStatus.Succeeded) {
        $("#gridResult").html(result.value);
    }
});

或者在 OWA(Web 上的 Outlook)中使用您的插件。

于 2016-06-14T22:50:49.930 回答