• Post category:WOPI REST API
  • Запись изменена:07.06.2023
POST /wopi/files/(file_id)/contents

Запрашивает сообщение об обновлении файла для HTTP://server /<…>/wopi*/файлы/<идентификатор>/операция с содержимым.

Тело запроса должно содержать полное содержимое файла в двоичном формате.

Эта операция работает следующим образом:

  1. Хост WOPI проверяет, заблокирован ли файл в данный момент или нет.
  2. Если файл в настоящее время заблокирован и значение X-WOPI-Lock не соответствует текущей блокировке файла, хост должен вернуть 409 Conflictнесоответствие блокировки») и включить заголовок ответа X-WOPI-Lock, содержащий значение текущая блокировка файла. В случае, когда файл разблокирован, хост должен установить X-WOPI-Lock на пустую строку.
  3. Если файл разблокирован, хост должен проверить текущий размер файла. Если это 0 байт, запрос PutFile следует считать действительным и следует продолжить. Если это любое значение, отличное от 0 байт, или вообще отсутствует, хост должен ответить 409 Conflict.
  4. В случае, когда файл заблокирован сторонним клиентом, хосты должны всегда включать текущий идентификатор блокировки в заголовок ответа X-WOPI-Lock.
Параметры
НазваниеОписаниеТип
file_idИдентификатор файла, который должен быть безопасным для URL.строковый
Параметры запроса
НазваниеОписаниеТип
access_tokenМаркер доступа, который хост будет использовать для определения того, авторизован ли запрос.строковый
Заголовки запросов
НазваниеОписаниеТипНаличие
X-WOPI-OverrideЗапрошенная операция с сервера WOPI (PUT)строковыйобязательно
X-WOPI-LockИдентификатор блокировки, который хост должен использовать для идентификации блокировки файла.строковыйнеобязательно
X-WOPI-EditorsВсе пользователи, внесшие изменения в документ в этом запросе PutFile (значения UserId разделены запятыми).строковыйнеобязательно
X-LOOL-WOPI-IsModifiedByUserУказывает, изменил ли пользователь документ перед сохранением («true«) или просто нажал кнопку «Сохранить» без каких-либо изменений («false«).строковыйнеобязательно
X-LOOL-WOPI-IsAutosaveУказывает, запускается ли PutFile автосохранением («true«) или явной операцией пользователя (кнопка «Сохранить» или пункт меню) («false«).строковыйнеобязательно
X-LOOL-WOPI-IsExitSaveУказывает, будет ли запускаться автоматическое сохранение при очистке документа из памяти (например, при отключении всех пользователей) («true«) или нет («false«).строковыйнеобязательно
Заголовки ответов
НазваниеОписаниеТипНаличие
X-WOPI-LockИдентификатор блокировки, идентифицирующий текущую блокировку файла. Этот заголовок всегда должен быть включен при ответе на запрос с 409 Conflict. Его не следует включать при ответе на запрос 200 ОК.строковыйнеобязательно
X-WOPI-LockFailureReasonПричина неудачной блокировки. Этот заголовок может быть включен при ответе на запрос с 409 Conflict. Он должен использоваться только для регистрационных целей.строковыйнеобязательно
X-WOPI-ItemVersionВерсия файла.строковыйнеобязательно