Когда файл должен быть разблокирован на стороне сервера WOPI после того, как файл заблокирован для редактирования
На основе протокола WOPI, а также сообщений через Интернет, включая сборку CobaltCore в стеке, мы можем выполнить редактирование на сервере Office Web App для ppt/excel/word. Одна вещь, которую мы пытаемся понять больше, связана с блокировкой / разблокировкой. Я провел некоторое тестирование для файла Excel, чтобы понять блокировку и разблокировку. Если бы мы могли понять это для Excel, мы бы перешли к файлу слов. Вот каковы мои выводы:
- когда я начал редактировать файл Excel в браузере, сервер OWA вызывал запрос Lock WOPI Http (заголовок x-wopi-override как LOCK) на сервер WOPI
- через 2 минуты сервер OWA автоматически сохранит то, что я отредактировал, вызвав PutFile ( x-wopi-override: PUT) к серверу WOPI
- когда я закрываю вкладку браузера, будет происходить вызов запроса Unlock Http ( x-wopi-override: UNLOCK) с сервера OWA на сервер WOPI
Однако после выполнения вышеупомянутого шага 2, если я просто оставлю просмотр простаившим более чем на 1 час, фактически сервер OWA будет вызывать RefreshLock ( x-wopi-override: REFRESH_LOCK) каждые 15 минут, чтобы обновить ту же блокировку, хотя по умолчанию блокировка должна быть просрочена через 30 минут согласно документу протокола WOPI. При этом он продолжит блокировку файла, и у сервера WOPI не будет возможности снять блокировку.
Мне просто интересно, когда мы могли бы снять блокировку на стороне сервера WOPI в случае, когда пользователь бездействует на стороне клиента. Мы не могли блокировать файлы в течение пары часов (здесь я пока не знаю ограничения, хотя мы могли получить такое сообщение, как истек срок сеанса при просмотре файла SharePoint в OWA после очень долгого времени), это помешало бы другим пользователям редактировать файл, У нас SupportsCoauth как ложный.
Просто подумайте, может ли кто-нибудь пролить здесь немного света о поведении блокировки и разблокировки и о том, как мы можем помешать OWA продолжать блокировать файл.
Примечание: я не смог найти лучший тег для этого, и в SO нет тега WOPI, поэтому я добавил те же теги, что и после сборки CobaltCore
Обновление (16 сентября): оно может не помешать другим пользователям редактировать файл, если редакция выполняется на сервере OWA, поскольку сервер OWA может потенциально снять блокировку для первого пользователя и блокировку для второго пользователя. Мы еще не подтвердили это. Однако не уверен, как будет работать блокировка, если другому пользователю потребуется загрузить этот же документ с рабочего стола на наш сервер, и для блокировки файла потребуется блокировка.