【发布时间】:2019-10-21 07:11:44
【问题描述】:
我需要从我的 Sensenet 客户端应用程序中打开办公文档。我的客户端应用程序在 ReactJs 中,我需要调用文档才能在 MS Office 中打开。是否有任何 OData REST API 可用于执行相同操作。请帮忙。
【问题讨论】:
标签: sensenet
我需要从我的 Sensenet 客户端应用程序中打开办公文档。我的客户端应用程序在 ReactJs 中,我需要调用文档才能在 MS Office 中打开。是否有任何 OData REST API 可用于执行相同操作。请帮忙。
【问题讨论】:
标签: sensenet
你有两个选择:
sensenet 中有一个动作可以为您提供相应的 url。首先,使用如下请求获取文档的操作:
https://example.com/odata.svc/Root/Content/myworkspace/Document_Library('abcdef.docx')/Actions
您将获得可用操作的列表,这是一个包含操作属性的 JSON 数组,例如 url。查找名为 EditInMicrosoftOffice 的操作。如果您显示该操作的 URL 并且用户单击该链接,则浏览器应打开相应的桌面办公应用程序(例如 Word)。您可能会注意到 url 的格式很特殊(类似于ms-word:ofe|u|https://example.com/Root/...)。请不要尝试手动组装此 url,使用 sensenet 为您生成的那个。
这需要在您的环境中安装和配置 Office Online Server,并且您还需要显示一个包含将显示编辑器的 iFrame 的 html。
一个简单的主机页面:获取数据以显示主机页面:
https://example.com/odata.svc/Root/Content/myworkspace/Document_Library('abcdef.docx')/GetWopiData
【讨论】: