【问题标题】:outlook-addin Office.AttachmentContent interface not workingOutlook-addin Office.AttachmentContent 界面不起作用
【发布时间】:2020-02-04 12:43:10
【问题描述】:

在我的 Outlook 插件中,我试图从活动电子邮件中获取附件。

我从以下位置复制粘贴了示例: https://docs.microsoft.com/en-us/javascript/api/outlook/office.attachmentcontent?view=outlook-js-preview

具体示例代码:

var item = Office.context.mailbox.item;
var options = {asyncContext: {currentItem: item}};
item.getAttachmentsAsync(options, callback);

function callback(result) {
    if (result.value.length > 0) {
        for (i = 0 ; i < result.value.length ; i++) {
            result.asyncContext.currentItem.getAttachmentContentAsync(result.value[i].id, handleAttachmentsCallback);
        }
    }
}

function handleAttachmentsCallback(result) {
    // Parse string to be a url, an .eml file, a base64-encoded string, or an .icalendar file.
    switch (result.value.format) {
        case Office.MailboxEnums.AttachmentContentFormat.Base64:
            // Handle file attachment.
            break;
        case Office.MailboxEnums.AttachmentContentFormat.Eml:
            // Handle email item attachment.
            break;
        case Office.MailboxEnums.AttachmentContentFormat.ICalendar:
            // Handle .icalender attachment.
            break;
        case Office.MailboxEnums.AttachmentContentFormat.Url:
            // Handle cloud attachment.
            break;
        default:
            // Handle attachment formats that are not supported.
    }
}

但在插件启动时,我收到一条错误消息,提示 item.getAttachmentsAsync 不是函数。

我查看了 API 文档寻求帮助,但找不到有关此问题的任何信息。

有什么线索吗?也许你也遇到过这个问题?

【问题讨论】:

  • 您是否处于阅读模式? getAttachmentsAsync 是仅撰写模式的 API。
  • 那么在阅读电子邮件时我应该使用哪种方法来获取附件?我在消息对象中看到似乎有一个方法getAttachments,但它也不起作用。
  • 在您提示 getAttachmentsAsync 是一个仅撰写模式的 API 之后,我发现在读取模式下您可以访问附件数组,如下所示:Office.context.mailbox.item.attachments 。如果它是 MailboxEnums.AttachmentType.Cloud 类型,那么您可以访问它的 url。例如,如何将 pdf 附加到电子邮件中,并且我想通过我的插件将该 pdf 传递到我的应用程序服务器。
  • 附加文件请参考链接:docs.microsoft.com/en-us/outlook/add-ins/…
  • 另外,你可以看看getAttachmentContentAsync。此处的示例代码:docs.microsoft.com/en-us/javascript/api/outlook/…。此 API 允许您检索附件的内容(以不同的格式),然后您可以将其发送到您的后端。

标签: outlook-addin email-attachments outlook-web-addins outlook-restapi


【解决方案1】:

如 @outlook-add-ins-team-msft 所述:getAttachmentsAsync 是仅撰写模式的 API。

这是一个使用 api 中正确方法的后续问题。

Office addin getAttachementContentAsync failed to load CORS issues

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-25
    • 1970-01-01
    相关资源
    最近更新 更多