Office365 API 获取 ReferenceAttachment 的内容

Office365 API get content of 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,但我的回复中也没有。

非常感谢您帮助找到获取此类附件内容的方法。谢谢!

我找到了解决办法。我无法获得来源 URL 的原因是这仅适用于 beta 版本。我期待有一个稳定的版本,但是,到那时我会使用 beta 版。 因此,为了使其正常工作,我们需要将路径参数中的版本更改为 beta。 例如

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

而不是:

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

完成后,您将能够在回复中看到以下内容:

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

这里还有一个有趣的地方。如果是Office文档,想直接下载而不是在线编辑器打开,可以把guestaccess改成下载。这样你就可以下载了。