通过MS Graph API可以实现“Word即服务”吗?

时间:2018-05-24 12:29:08

标签: microsoft-graph onedrive

我找到了一些但不是全部的谜题。

使用Graph API,当用户在我自己的Web应用程序中选择文档时,我可以: -

  1. 在其OneDrive帐户中创建新的临时文件夹
  2. 将my.docx文件上传到此位置
  3. 获取my.docx的网址
  4. 在新标签页中打开网址,加载Office 365的MSWord编辑器(或再次点击后再显示查看器和编辑器)
  5. 这是一个有点棘手的地方。如何将已编辑的内容重新放回我的Web应用程序历史存储这些文档的位置?

    理论,我可以: -

    1. 为我创建的新文件夹
    2. 创建webhook订阅
    3. 实施webhook侦听器(和验证)服务
    4. 当听众收到文件的“更新”通知时: -

      1. 调用下载(内容)API,或者从driveItem元数据中,从@ microsoft.graph.downloadUrl下载
      2. 将其保留在我的网络应用程序中所需的位置
      3. 对我来说,这听起来好像会受到很大的延误。 webhook订阅通常会发送批量更改,并且频率看起来不确定。在编辑会话期间对每个单独的保存操作进行版本控制肯定不会很好。

        我是否错过了一些更明显的Word即服务路径?即另一种API或API的混合物?

        替代方案我考虑过但还没有确定范围:在我自己的Web应用程序中实现WOPI或WebDav。

2 个答案:

答案 0 :(得分:0)

今天OneNoteExcel是唯一的办公室"文档客户"通过Microsoft Graph中公开提供的REST API公开API 唯一的其他公共选项"我知道的是:

答案 1 :(得分:0)

听起来您只是使用OneDrive来利用其对MS-WOPI protocol的内置支持。 WOPI基本上是一个增强的WebDav接口,Office使用它来处理远程文档(即存储在OneDrive,Box,DropBox等上的文件)。

您的解决方案通常很好,并且很容易协调。您绝对可以使用webhooks订阅对文件的更改。您可能希望应用中的某种机制能够在您完成“#34;完成”时通知您的系统。所以你可以事后清理文件。

如果您想要更强大的解决方案,您需要查看WOPI。实施WOPI将允许您永久保留系统上的这些文件。 Office Online将使用WOPI界面与您的存储系统对话并就地打开/保存/编辑文件。

请记住,实施WOPI(或任何协议)往往是一项非常重要的工作。在使用Office之前,您还需要通过Office验证最终解决方案并将其列入白名单。有关此流程以及如何请求访问权限的详细信息,请访问Microsoft Cloud Storage Provider Program网站。