Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы
Редакторы
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
Команда
Команда
Мобильные редакторы
Мобильные редакторы
Облачный офис
Облачный офис
Почта
Почта
Органайзер
Органайзер
Сервер лицензирования
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

Использование WOPI

Часто задаваемые вопросы о Сервере документов:
Использование WOPI

Как включить WOPI?

Чтобы включить WOPI, установите для параметра wopi.enable в конфигурации Сервера документов значение true.

Параметр
Название Описание Тип Пример
wopi.enable Определяет, включен WOPI или нет. Значение по умолчанию false. логический true
Пример
{
    "wopi": {
        "enable": true
    }
}
Как настроить Сервер документов для приема запросов WOPI только от доверенного интегратора?
IP-адрес такого доверенного интегратора должен быть включен в WOPI белый список домена ↗. При этом доступ для всех остальных интеграторов должен быть закрыт.

Выполните действия, описанные в этом разделе, чтобы настроить IP-фильтр Сервера документов.

Why do I need the discovery XML and how can I get it?

Обнаружение WOPI ↗— это процесс, который помогает серверу WOPI обнаруживать клиента WOPI, запрашивая XML-файл обнаружения из онлайн-офиса. Хосты WOPI используют XML для обнаружения, чтобы указать, как взаимодействовать с онлайн-офисом. Элемент действия XML-файла обнаружения представляет:

  • доступные операции с документами в онлайн-кабинете,
  • поддерживаемые форматы файлов (расширения).

Запросы отправляются на адрес https://documentserver/hosting/discovery, где documentserver — это имя сервера с установленным Р7 Document Server.

Более подробную информацию об открытии WOPI можно найти здесь.

Как настроить поведение редактора через WOPI?
Every WOPI discovery action has two attributes:

Атрибуты
Название Описание
requires WOPI REST endpoints, необходимые для использования действий.
urlsrc URL-адрес, по которому вы переходите, чтобы вызвать действие для определенного файла..
Пример
<action name="edit" ext="docx" requires="locks,update"
    urlsrc="https://word-edit.officeapps.live.com/we/wordeditorframe.aspx?
ui=en-us&thm=1&"/>

Поведение редактора, такое как язык, тема или чат, можно настроить с помощью discovery query parameters, которые являются параметрами, которые могут быть представлены файловым хранилищем в атрибуте urlsrc.

Все доступные discovery query parameters / параметры обнаружения запроса можно найти здесь.

  • Как создать сеанс онлайн-офиса в приложении?

Чтобы создать сеанс онлайн-офиса в вашем приложении, хост должен создать HTML-страницу, на которой будет размещен элемент iframe, указывающий на конкретный URL — адрес действия WOPI  ↗.

Хост-страница должна содержать следующие элементы:

  • Элемент формы, через который хост должен отправить параметры access_token и access_token_ttl в iframe онлайн-офиса в целях безопасности.
  • Код JavaScript для взаимодействия с iframe онлайн-офиса с помощью PostMessage.
  • Специальные стили CSS для элемента body и онлайн-офиса, чтобы избежать visual bags?.Кроме того, хост-страница должна установить соответствующий favicon для страницы используя URL-адрес favicon, предоставленный при обнаружение WOPI.
  • Метатег порта просмотра, чтобы избежать визуальных и функциональных проблем в мобильных браузерах.

Пример кода хост-страницы можно найти на этой странице.

Как ограничить публичный доступ к данным через WOPI?
Чтобы ограничить публичный доступ к вашим данным, необходимо настроить безопасный обмен запросами между онлайн-офисом и интегратором.

Интегратор должен убедиться, что запрос получен от Р7 Document Server. Для этой цели он использует ключи подтверждения ↗. Сервер документов подписывает запрос закрытым ключом. Соответствующий открытый ключ записывается в элементе proof-key в WOPI discovery XML. Интегратор сверяет закрытый ключ с открытым ключом. Подпись отправляется с каждым запросом в HTTP-заголовках X-WOPI-Proof и X-WOPI-ProofOld.

Более подробную информацию о ключах подтверждения можно найти на этой странице.

Где я могу найти возможные коды ошибок WOPI и их описания?
Возможные коды ошибок WOPI и их описание вы можете найти на этой странице.
Какие операции WOPI REST API поддерживаются ТОЛЬКО OFFICE Docs?
Р7 Document Server использует следующие операции WOPI: CheckFileInfo, GetFile, Lock, RefreshLock, Unlock, PutFile, RenameFile. Дополнительные сведения об этих операциях см. на соответствующих страницах.
Как ограничить доступ к использованию сервера Р7 через WOPI?
Вы не можете ограничить доступ к использованию сервера Р7 через WOPI. Управление доступом к редактированию доступно только через Р7 Document Server API и на основе подписи JWT. Секретный ключ необходим для генерации запроса на открытие файла.

Более подробную информацию о подписи можно найти здесь.

Как получить информацию о свойствах файла, правах доступа и настройках редактора через WOPI?
Для получения информации о свойствах файла, правах доступа и настройках редактора используйте метод CheckFileInfo. Все доступные параметры вы можете найти на этой странице.
Какие действия поддерживаются через WOPI?
Помимо основных действий: просмотра, редактирования и совместного редактирования, вы также можете закрыть редактор, перейти из режима просмотра в режим редактирования, переименовать файл, открыть диалог настроек совместного доступа, открыть историю версий документа, вставить изображения из хранилища.

Узнайте больше о дополнительных действиях при обработке событий на этой странице.

Какие права доступа я могу установить к документу через WOPI?
Вы можете установить права доступа для просмотра, редактирования, переименования, рецензирования и печати.

Узнайте больше о правах доступа на этой странице.

В чем разница между Р7 Document Server API и WOPI?
Вы можете интегрировать Р7 Document Server с любым облачным сервисом, используя API или WOPI.