在 Outlook 365 API 中返回 HTML 的 setAsync 和 getAsync 问题

setAsync and getAsync issues with returned HTML in Outlook 365 API

我们在 window.Office.context.mailbox.item.body.setAsync 修改我们发送给它的 html 时遇到问题。特别是签名。

原文html传入这里:

window.Office.context.mailbox.item.body.setAsync(html, { coercionType: window.Office.CoercionType.Html }, (response) => {
    if (response.error) {
        console.error('setBody Error :', response.error);
        callback && callback(response.error);
    } else {
        callback && callback(null);
    }
});

在签名中包含一张图片,其 src 看起来像这样: <img class="EmojiInsert" src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2w...

但是在我们将它传递给 setAsync 并调用 window.Office.context.mailbox.item.body.getAsync('html', ...) 之后 立即,我们收到的是: <img class="EmojiInsert" src="" 在签名中。

这仅适用于签名图片,电子邮件中附加的任何其他图片都会正确返回。

有没有我们做得不对的地方?

谢谢

出于安全考虑,我们不支持直接通过 SetAsync api 附加图像。为了内联插入图像,您需要先将其添加为附件,并将 isInline 属性 设置为 true,然后使用 src='cid:myImage.jpg' 插入图像标签。查看教程 here 以获取快速示例。