如何在Microsoft Office Online中打开附件?

时间:2018-04-20 18:07:13

标签: outlook microsoft-graph

我正在使用Microsoft Graph来获取邮件附件。

GET /messages/{messageId}/attachments

下面是我附件中的Excel文件。它不通过SharePoint或OneDrive共享。这是一个真实的文件。

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('576552d5-3bc0-42a6-a53d-bfceb405db23')/messages('AAMkADBlZTUwNTkxLWVmODgtNDVhNC1iZjhlLTdjNjA1ODZlMDI5MgBGAAAAAACUbnk-iwQZRbXMgkfKtmYhBwCpTc-InBsuTYwTUBb_VIb4AAAAAAEJAACpTc-InBsuTYwTUBb_VIb4AAEDHFyhAAA%3D')/attachments",
    "value": [
        {
            "@odata.type": "#microsoft.graph.fileAttachment",
            "id": "AAMkADBlZTUwNTkxLWVmODgtNDVhNC1iZjhlLTdjNjA1ODZlMDI5MgBGAAAAAACUbnk-iwQZRbXMgkfKtmYhBwCpTc-InBsuTYwTUBb_VIb4AAAAAAEJAACpTc-InBsuTYwTUBb_VIb4AAEDHFyhAAABEgAQAJNuGUnRZb5Ng3YjQgsDdEg=",
            "lastModifiedDateTime": "2018-04-20T18:02:05Z",
            "name": "Book1.xlsx",
            "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
            "size": 58818,
            "isInline": false,
            "contentId": null,
            "contentLocation": null,
            "contentBytes": "UEsDBBQABgAIAAAAIQBi7p1oXgEAAJAEAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAACAAAAA..."
        }
    ]
}

我的问题是,如果附件是Excel / Word / PowerPoint文件,有没有办法获得在Microsoft Office Online中打开/查看它的链接?感谢

2 个答案:

答案 0 :(得分:0)

不直接,不。要在Office Online中打开文档,需要将其复制到支持WOPI的存储提供程序。最简单的方法是使用用户的OneDrive实例。将文件保存到OneDrive后,查询DriveItem将返回webUrl属性,该属性包含在Office Online中打开该文档的完整URI。

答案 1 :(得分:0)

如果该文件在OneDrive中共享,并且在云中附加了该文件的共享副本,则可以执行此操作。
首先,您必须使用beta API版本来查询附件: https://graph.microsoft.com/beta/me/messages/{messageId}/attachments

它将返回给您SourceUrl。即使您未登录,也可以在浏览器中打开该URL。