Office加载项Outlook API使用displayNewMessageForm方法附加文档问题
我正在为Outlook开发office加载项。需要打开带有预定义附件的新邮件 正在尝试从当前项目(邮件)获取附件,如下所示:Office加载项Outlook API使用displayNewMessageForm方法附加文档问题,api,outlook-addin,add-in,office-js,outlook-restapi,Api,Outlook Addin,Add In,Office Js,Outlook Restapi,我正在为Outlook开发office加载项。需要打开带有预定义附件的新邮件 正在尝试从当前项目(邮件)获取附件,如下所示: Office.context.mailbox.item.attachments 这是一个输出(我得到附件类型、id、大小等): 然后,我尝试通过外接程序Outlook API将此文件附加到Outlook中的新邮件,下面是一个示例,我使用该示例附加刚从其他电子邮件中获得的文件(如“转发”功能): Office.context.mailbox.displayNewMes
Office.context.mailbox.item.attachments
这是一个输出(我得到附件类型、id、大小等):
然后,我尝试通过外接程序Outlook API将此文件附加到Outlook中的新邮件,下面是一个示例,我使用该示例附加刚从其他电子邮件中获得的文件(如“转发”功能):
Office.context.mailbox.displayNewMessageForm(
{
toRecipients:Office.context.mailbox.item.to,//从当前项复制到行
收件人:['sam@contoso.com'],
主题:“Outlook加载项很酷!”,
htmlBody:“你好,世界!
”,
附件:[
{
键入:“文件”,
名称:“image.png”,
网址:'http://contoso.com/image.png',
伊辛琳:是的
}
]
});
这里有一个问题:我收到一个异常“值不在预期范围内”。参数名称:附件
非常感谢您的帮助。根据上的文档,目前支持两种附件类型。要将文件附加到项目,附件对象应如下所示。。。 若要附加现有邮件中的项目,对象应看起来
{
type: 'item',
name: 'image.png',
itemId: 'ews_item_id_goes_here'
}
根据文档,您提供的屏幕截图显示了错误的参数集。带有EWS
ItemId
的附件只能是类型“item
”,屏幕截图显示附件为“文件
”。屏幕截图上的代码看起来不正确,因为附件
对象具有属性itemId
,并且此对象中没有id
。我建议您发布您实际使用的代码,而不是文档中的示例。事实上,我尝试了不同的场景,也尝试将其作为一个项目添加,但错误相同。您代码的最后一个屏幕截图也有错误。请仔细阅读。1. <不应为值为“项”
”的类型设置code>isInline
属性。2.当type
设置为“item
”时,必须设置itemId
属性;你的代码由于某种原因设置了id
。哦,是的,你是对的,我修复了选项,但是一个新窗口打开了,没有附件。我认为Office.context.mailbox.item.attachments[0]。id不是itemId,因为itemId是最多100个字符的字符串(根据文档),但我的id长度为160。您对如何获取附件id或将其转换为ews id有何建议?谢谢,如果我使用item.itemId作为附件,这是可行的,但是当我使用Office.context.mailbox.item.attachments[0].id时,我有一封没有附件的新邮件,我想id的问题是,你知道如何获得正确的ews id吗?要将REST格式的itemId
转换为ews,请使用函数yes,我也试过这个,但它不起作用。实际上,在这个方法之后,什么也不会发生——id是相同的。我尝试在服务器()上使用SOAP请求,但它仍在工作,但主要目标是为新邮件添加附加。@SamLewis My bad,当您在Office.context.mailbox.item.attachments
中迭代时,附件的id应为Exchange附件id,我假设这个Id与EWS Id相同。我不确定为什么这个Id不能与附件
对象一起使用。您是否介意发布另一个关于ID的问题?@SamLewis显然,您可以使用类似于的XML请求直接从Exchange中使用和检索附件ID,但它没有解释为什么不能使用附件列表中的ID。
{
type: 'file',
name: 'image.png',
url: 'http://contoso.com/image.png',
isInline: true
}
{
type: 'item',
name: 'image.png',
itemId: 'ews_item_id_goes_here'
}