outlook - 使用 Exchange 附件 ID 从所选邮件创建带有附件的邮件
问题描述
当您遍历 时Office.context.mailbox.item.attachments
,每个AttachmentDetails
对象都有id
作为 Exchange 附件 ID。
我假设 Exchange 附件 ID 与EWS
ID 相同。
我正在尝试将当前消息中的附件添加到新的回复表单中,我使用该displayReplyAllForm
方法打开该表单。我正在使用id
原始邮件中的附件。
我收到以下错误:
附加一个或多个附件时出错。您可以关闭此响应并在应用程序中重试。
以下是我正在使用的代码:
if (item.attachments.length > 0) {
var attach = item.attachments[1];
attachments.push({
'type': 'item',
'name': attach.name,
'itemId': attach.id
});
closeOutlookCLIDoc(true);
Office.context.mailbox.item.displayReplyAllForm({
'htmlBody': '',
'attachments': attachments
});
}
请确认消息的AttachmentDetails.id
fromattachments
对象,根据文档:Exchange attachment ID of the attachment,与from相同,根据文档:The EWS item id of the attachment。这是一个最多 100 个字符的字符串。?formData.attachments.itemId
Office.context.mailbox.item.displayReplyAllForm
这是我正在关注的指南。
解决方案
displayReplyForm API 需要 EWS项目ID。您通过附件集合获得的是附件ID。简而言之,我们没有允许您将附件 ID 传递到 displayReplyForm API 并将该项目添加为附件的 API。您必须获取该附件并将其作为项目保存在用户的某个文件夹中,以便您可以传递其 EWS 项目 ID,或者您必须获取附件字节,将它们放在 URL 上,然后添加文件附件。
推荐阅读
- machine-learning - Solr 的 LTR 插件对于大型模型是否实用?
- python - 谷歌云函数随机重试成功
- devops - Devops 社区:您如何构建多个服务的目录?
- android - 需要 Android 偏好设置 xml 设计帮助
- git - 从项目的旧版本中恢复 git 历史记录
- javascript - 使用纯 JavaScript 在动态创建的元素上使用 EventListener 很难
- python - 列表理解:无法从自动字段编号切换到手动字段规范
- android - 在 Android 中使用 Dagger2 进行图表更新的 Sci-Chart
- ios - SwiftUI:无法向下拖动以关闭 UIImagePickerController
- laravel - 我如何在 laravel 中提出请求