2017-05-05 18 views
1

内容和我在加载具有以下类型的附件困难:Office365 API让我尝试过程中被添加到我的事件附件的ReferenceAttachment

"@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment" 

的问题是,对于通常的附件:

"@odata.type": "#Microsoft.OutlookServices.FileAttachment" 

Office365与文件的完整内容的响应发送ContentBytes。在ReferenceAttachment的情况下,响应中没有ContentBytes字段。 我没有发现有关文档中ReferenceAttachment的任何有用内容:

https://msdn.microsoft.com/en-us/office/office365/api/calendar-rest-operations#get-attachments

但是,我确实成功地在测试版本的文档中找到了一些信息。

https://msdn.microsoft.com/en-us/office/office365/api/complex-types-for-mail-contacts-calendar#referenceattachment-preview

应该有SourceUrl,但我没有在我的回应要么。

我真的很感激你的帮助,找到一种方法来获取这些附件的内容。谢谢!

回答

2

我找到了解决方案。我之所以无法获得源URL是因为这仅适用于测试版版本。我期待着它有一个稳定的版本,但是,我会在那个时候使用beta版本。 因此,为了使其工作,我们需要将path参数中的版本更改为beta。 例如

https://outlook.office.com/api/beta/me/events/{eventId}/attachments/ 

相反的:这里

"SourceUrl": "https://.../guestaccess.aspx?docid=...", 

一个更有趣的poiunt:

https://outlook.office.com/api/v2.0/me/events/{eventId}/attachments/ 

已经这样做了,你就可以看到你的回应如下。如果它是一个Office文档,你想直接下载,而不是仅仅在在线编辑器开扩了,你可以改变guestaccess下载。因此你将可以下载。

+0

谢谢!这对我非常有帮助。我正在检索Message中的ReferenceAttachment,并且内容已成功返回。而SourceUrl仍然只是在测试版中返回,而不是在你提到的v2.0中。在文档中,它表示它已经在v2.0中提供。 – masphei

相关问题