Реализовать поддержку общего диска

Общие диски используют другие модели организации, совместного доступа и владения, чем «Мой диск». Если ваше приложение будет создавать и управлять файлами на общих дисках, необходимо реализовать поддержку общих дисков. Сложность реализации зависит от функциональности вашего приложения.

Для начала вам необходимо включить параметр запроса supportsAllDrives=true в ваши запросы, когда ваше приложение выполняет перечисленные ниже операции:

API привода v3

  • files.get
  • files.list
  • files.create
  • files.update
  • files.copy
  • files.delete
  • changes.list
  • changes.getStartPageToken
  • permissions.list
  • permissions.get
  • permissions.create
  • permissions.update
  • permissions.delete

API привода v2

  • files.get
  • files.list
  • files.insert
  • files.update
  • files.patch
  • files.copy
  • files.trash
  • files.untrash
  • files.delete
  • files.touch
  • children.insert
  • parents.insert
  • changes.list
  • changes.getStartPageToken
  • changes.get
  • permissions.list
  • permissions.get
  • permissions.insert
  • permissions.update
  • permissions.patch
  • permissions.delete

Параметр supportsAllDrives=true информирует Google Drive о том, что ваше приложение предназначено для обработки файлов на общих дисках.

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

Поиск контента на общем диске

Используйте метод files.list для поиска общих дисков. В этом разделе рассматриваются поля, относящиеся к общим дискам, в методе files.list . Чтобы найти общий диск, см. раздел Поиск файлов и папок .

Метод files.list содержит следующие поля и режимы запросов, специфичные для общего диска:

  • driveId — идентификатор общего диска для поиска.
  • includeItemsFromAllDrives — указывает, следует ли включать элементы общих дисков в результаты. Если этот параметр не указан или имеет значение false, элементы общих дисков не возвращаются.

  • corpora — тела элементов (файлов/документов), к которым применяется запрос. Поддерживаются следующие тела: user , domain , drive и allDrives . Для эффективности предпочтительнее user или drive , чем allDrives .

  • supportsAllDrives — поддерживает ли запрашивающее приложение как функцию «Мои диски», так и общие диски. Если false, то элементы общих дисков не включаются в ответ.

Следующие режимы запросов характерны для общих дисков:

includeItemsFromAllDrives corpora Описание запроса
true user Запрашивает файлы, к которым пользователь получил доступ, включая файлы на общем диске и файлы в разделе «Мой диск».
true drive Запрашивает все элементы на указанном общем диске. В запросе необходимо указать driveId.
true allDrives Запрашивает файлы, к которым пользователь получил доступ, и все общие диски, к которым он подключен. Обратите внимание, что ответ может содержать incompleteSearch : true , что означает, что некоторые корпуса не были найдены для этого запроса.
true domain Запрашивает файлы, которые являются общими для домена, включая файлы как общего диска, так и «Моего диска».

Отслеживание изменений на общем диске

Используйте метод changes.list для отслеживания изменений на общем диске. В этом разделе рассматриваются поля метода changes.list , специфичные для общего диска. Подробнее см. в разделе Отслеживание изменений для пользователей и общих дисков . Метод changes.list содержит следующие поля и режимы запросов, специфичные для общего диска:

  • driveId — общий диск, с которого возвращаются изменения. Если указано, идентификаторы изменений относятся к изменениям на общем диске, а не к изменениям в файлах, отображаемых пользователю. Для ссылки на конкретное изменение на общем диске необходимо использовать как идентификатор общего диска, так и идентификатор изменения.
  • supportsAllDrives — поддерживает ли запрашивающее приложение общие диски. Если false, то элементы общих дисков, включая как общие диски, так и файлы на них, не возвращаются.
  • includeItemsFromAllDrives — следует ли включать файлы или изменения общего диска в список изменений.

Следующие режимы запросов характерны для общих дисков:

includeItemsFromAllDrives driveId Описание запроса
true Нет Изменения отражают изменения файлов внутри или вне общих дисков, к которым пользователь получил доступ, а также изменения на общих дисках, участником которых является пользователь.
true Да Изменения отражают изменения конкретного указанного общего диска и элементов на этом общем диске.

Дополнительную информацию о поведении журнала изменений см. в разделе Журналы изменений .

Включить поддержку общих дисков в пользовательском интерфейсе Drive

Чтобы получить доступ к содержимому общего диска через Drive UI, убедитесь, что вы отметили опцию «Поддержка общих дисков» в консоли Google API . Подробнее см. в статье «Настройка интеграции с Drive UI» .

Использование средства выбора файлов с общими дисками

Средство выбора файлов поддерживает выбор объектов на общих дисках. Подробную информацию о включении поддержки общих дисков и добавлении представления общих дисков в средство выбора файлов см. в API Google Picker .

Следующие шаги

Продолжайте читать раздел Управление общими дисками, чтобы получить справку по созданию общих дисков и управлению разрешениями на доступ к общим дискам.