Общие диски используют другие модели организации, совместного доступа и владения, чем «Мой диск». Если ваше приложение будет создавать и управлять файлами на общих дисках, необходимо реализовать поддержку общих дисков. Сложность реализации зависит от функциональности вашего приложения.
Для начала вам необходимо включить параметр запроса 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 о том, что ваше приложение предназначено для обработки файлов на общих дисках.
Приложения, которые считывают или изменяют разрешения, отслеживают изменения или выполняют поиск по нескольким корпусам, требуют дополнительных возможностей общего диска. Далее в документе описываются дополнительные изменения, необходимые для выполнения этих задач.
Поиск контента на общем диске
Используйте метод list
для ресурса files
, чтобы найти файлы пользователя на общих дисках. Чтобы найти общий диск, см. раздел Поиск общих дисков .
Метод list
содержит следующие параметры запроса, специфичные для общего диска:
driveId
: идентификатор общего диска для поиска.corpora
: Тела элементов (файлов или документов), к которым применяется запрос. Поддерживаются следующие типы:user
,domain
,drive
иallDrives
. Для эффективности предпочтительнееuser
илиdrive
, чемallDrives
. По умолчанию для corpora задано значениеuser
.includeItemsFromAllDrives
: следует ли включать в результаты как элементы «Мой диск», так и элементы общего диска. Если этот параметр не указан или имеет значение false, элементы общего диска не возвращаются.supportsAllDrives
: поддерживает ли запрашивающее приложение и «Мой диск», и общий диск. Если false, элементы общего диска не включаются в ответ.
Следующие режимы запросов характерны для общих дисков:
includeItemsFromAllDrives | corpora | Описание запроса |
---|---|---|
true | user | Запрашивает файлы, к которым пользователь получил доступ, включая файлы на общем диске и файлы в разделе «Мой диск». |
true | domain | Запрашивает файлы, которые являются общими для домена, включая файлы как общего диска, так и «Моего диска». |
true | drive | Запрашивает все элементы на указанном общем диске. В запросе необходимо указать driveId . |
true | allDrives | Запрашивает файлы, к которым пользователь получил доступ, и все общие диски, к которым он подключен. Обратите внимание, что ответ может содержать incompleteSearch:true , что означает, что некоторые корпуса не были найдены для этого запроса. |
Отслеживание изменений на общем диске
Используйте метод list
в ресурсе changes
для отслеживания изменений на общем диске. Подробнее см. в разделе Отслеживание изменений для пользователей и общих дисков .
Метод list
содержит следующие параметры запроса, специфичные для общего диска:
driveId
: Общий диск, с которого возвращаются изменения. Если указано, идентификаторы изменений относятся к изменениям элементов на общем диске, предоставляя текущее состояние файла. Для ссылки на конкретное изменение на общем диске необходимо использовать как идентификатор общего диска, так и идентификатор изменения.includeItemsFromAllDrives
: следует ли включать файлы или изменения общего диска в список изменений.supportsAllDrives
: поддерживает ли запрашивающее приложение общие диски. Если false, то элементы общих дисков, включая как общие диски, так и файлы на них, не возвращаются.
Следующие режимы запросов характерны для общих дисков:
includeItemsFromAllDrives | driveId | Описание запроса |
---|---|---|
true | Нет | Изменения отражают изменения файлов внутри или вне общих дисков, к которым пользователь получил доступ, а также изменения на общих дисках, участником которых является пользователь. |
true | Да | Изменения отражают изменения конкретного указанного общего диска и элементов на этом общем диске. |
Дополнительные сведения о поведении журнала изменений см. в разделе Отслеживание изменений для пользователей и общих дисков .
Включить поддержку общих дисков в пользовательском интерфейсе Drive
Чтобы получить доступ к содержимому общего диска через Drive UI, убедитесь, что на вкладке «Интеграция с Drive UI» в Google Drive API в консоли Google Cloud установлен флажок «Поддержка общих дисков» . Подробнее см. в статье «Настройка интеграции с Drive UI» .
Используйте Google Picker с общими дисками
Google Picker поддерживает выбор элементов на общих дисках. Подробную информацию о включении поддержки общих дисков и добавлении представлений общих дисков в Google Picker см. в API Google Picker .