1

我想实现WOPI协议,以便使用Office 365在浏览器中打开和编辑 Office 文档:

当 Microsoft 发送CheckFileInfo请求时:

GET /api/wopi/files/{IDFILE}?access_token={TOKEN}&access_token_ttl=0

我发送这是响应:

{
    BaseFileName: 'test2.docx',
    OwnerId: 'XXXX@gmail.com',
    UserId: 'XXXX@gmail.com',
    Size: 12642,
    SHA256: null,
    Version: '0',
    SupportsDeleteFile: false,
    SupportsEcosystem: false,
    SupportsFolders: false,
    SupportsGetFileWopiSrc: false,
    SupportsGetLock: true,
    SupportsLocks: true,
    SupportsRename: false,
    SupportsUpdate: true,
    SupportsUserInfo: false
}

编辑器显示此错误

在此处输入图像描述

我究竟做错了什么?

4

2 回答 2

3

我在使用 Office Online Server 时遇到了同样的问题。

解决方案:您需要以Get-OfficeWebAppsFarm管理员身份从 PowerShell 执行,并检查EditingEnabled属性。

如果它被禁用,那么您可以通过Set-OfficeWebAppsFarm -EditingEnabled:$true

于 2019-10-31T16:54:00.483 回答
1

您应该在 CheckFileInfo 的响应中返回这些字段。
1. SupportUpdate : true (让 WOPI Client 知道你的 API 实现了 PutFile 和 PutRelativeFile 方法来更新文件)
2. UserCanWrite : true (表示用户对文件有写权限)
3. LicenseCheckForEditIsEnabled : true (路由用户到 Microsoft 登录页面以验证用户是否拥有 Office 365 许可证)
4. HostEditUrl : url_to_your_edit_page

注意:您的用户需要 MS Office 365 许可证才能在 WOPI 上编辑文件。
有效的 XHTML.

于 2020-04-01T02:23:34.170 回答