跳到主要内容

PutFile

POST /wopi/files/(file_id)/contents

更新文件的二进制内容以执行 HTTP://server/<...>/wopi*/files/<id>/contents 操作。

此操作的工作原理如下:

  1. WOPI 主机检查文件当前是否被锁定。
  2. 如果文件当前被锁定并且 X-WOPI-Lock 值与文件上当前的锁不匹配,则主机必须返回 409 Conflict ("lock mismatch") 并包含 X-WOPI-Lock 响应标头,标头中包含文件当前锁的值。在文件未被锁定的情况下,主机必须将 X-WOPI-Lock 设置为空字符串。
  3. 如果文件未锁定,主机必须检查文件的当前大小。如果它是 0 字节,则 PutFile 请求应被视为有效并应继续。如果它是 0 字节以外的任何值,或者完全丢失,主机应该以 409 Conflict响应。
  4. 在文件被第三方客户端锁定的情况下,主机仍应始终在 X-WOPI-Lock 响应标头中包含当前锁ID。

参数

名称类型描述
file_idstringfile ID 必须是 URL 安全的文件 ID。

查询参数

名称类型描述
access_tokenstring访问令牌主机将用它确定请求是否被授权。

请求标头

名称类型是否必填描述
X-WOPI-Overridestring必填来自 WOPI 服务器的请求操作 (PUT)。
X-WOPI-Lockstring非必填的锁ID主机必须用它来标识文件上的锁。
X-WOPI-Editorsstring非必填的在此 PutFile 请求中对文档做出更改的所有用户 (UserId 值以逗号分隔)。
X-LOOL-WOPI-IsModifiedByUserstring非必填的指示用户是否在保存之前修改了文档("true"),或者他们是否只是按下了 保存 按钮而没有进行任何修改("false")。
X-LOOL-WOPI-IsAutosavestring非必填的指示 PutFile 是由自动保存 ("true") 还是由显式用户操作(保存 按钮或菜单项)("false")触发。
X-LOOL-WOPI-IsExitSavestring非必填的指示当从内存中清除文档时(例如,当所有用户断开连接时)是否会触发自动保存。(是:"true",否:"false"

请求正文

请求正文必须是文件的完整二进制内容。

响应标头

名称类型是否必填描述
X-WOPI-Lockstring非必填的锁ID标识文件上的当前锁。当使用 409 Conflict响应请求时,必须始终包含此标头。用 200 OK响应请求时不应包含它。
X-WOPI-LockFailureReasonstring非必填的锁定失败的原因。当使用 409 Conflict响应请求时,可能会包含此标头。它只能用于记录目的。
X-WOPI-ItemVersionstring非必填的文件版本。