API Google Диска поддерживает несколько типов действий по загрузке и экспорту, как указано в следующей таблице:
Скачать действия |
| ||||
Экспортировать действия |
|
Прежде чем загружать или экспортировать содержимое файла, убедитесь, что пользователи могут загрузить файл, используя поле capabilities.canDownload
в ресурсе files
.
Описания упомянутых здесь типов файлов, включая файлы Blob и Google Workspace, см. в разделе Типы файлов .
Остальная часть этого руководства содержит подробные инструкции по выполнению этих типов действий по загрузке и экспорту.
Загрузить содержимое файла больших двоичных объектов
Чтобы загрузить файл большого двоичного объекта, хранящийся на Диске, используйте метод files.get
с идентификатором загружаемого файла и параметром URL-адреса alt=media
. Параметр URL-адреса alt=media
сообщает серверу, что в качестве альтернативного формата ответа запрашивается загрузка контента.
Параметр URL-адреса alt=media
— это системный параметр, доступный во всех API-интерфейсах Google REST. Если вы используете клиентскую библиотеку для Drive API, вам не нужно явно задавать этот параметр.
В следующем примере кода показано, как использовать метод files.get
для загрузки файла с клиентскими библиотеками Drive API.
Ява
Питон
Node.js
PHP
.СЕТЬ
В этом примере кода используется библиотечный метод, который добавляет параметр URL-адреса alt=media
к базовому HTTP-запросу.
Загрузка файлов, начатая из вашего приложения, должна быть авторизована с областью, обеспечивающей доступ для чтения к содержимому файла. Например, приложение, использующее область drive.readonly.metadata
, не имеет права загружать содержимое файла. В этом примере кода используется ограниченная область файлов «диск», которая позволяет пользователям просматривать все ваши файлы на Диске и управлять ими. Дополнительные сведения об областях действия Диска см. в разделе Выбор областей действия API Google Диска .
Пользователи с разрешениями на редактирование могут ограничить загрузку пользователями только для чтения, установив для поля copyRequiresWriterPermission
значение false
.
Файлы, идентифицированные как оскорбительные (например, вредоносное программное обеспечение), могут быть загружены только владельцем файла. Кроме того, необходимо включить параметр запроса get
acknowledgeAbuse=true
, чтобы указать, что пользователь признал риск загрузки потенциально нежелательного программного обеспечения или других оскорбительных файлов. Ваше приложение должно в интерактивном режиме предупреждать пользователя перед использованием этого параметра запроса.
Частичная загрузка
Частичная загрузка предполагает загрузку только определенной части файла. Вы можете указать часть файла, которую хотите загрузить, используя диапазон байтов с заголовком Range
. Например:
Range: bytes=500-999
Загрузите содержимое файла больших двоичных объектов в более ранней версии.
Чтобы загрузить содержимое файлов больших двоичных объектов более ранней версии, используйте метод revisions.get
с идентификатором загружаемого файла, идентификатором версии и параметром URL-адреса alt=media
. Параметр URL-адреса alt=media
сообщает серверу, что в качестве альтернативного формата ответа запрашивается загрузка контента. Подобно files.get
, метод revisions.get
также принимает необязательный параметр запроса acknowledgeAbuse
и заголовок Range
. Дополнительную информацию о загрузке версий см. в разделе Управление версиями файлов .
Протокол запроса показан здесь.
GET https://www.googleapis.com/drive/v3/files/{FILE_ID
}/revisions/{REVISION_ID
}?alt=media
Загрузка содержимого файла BLOB-объекта в браузере
Чтобы загрузить содержимое файлов больших двоичных объектов, хранящихся на Диске, в браузере, а не через API, используйте поле webContentLink
ресурса files
. Если у пользователя есть доступ к скачиванию файла, возвращается ссылка для скачивания файла и его содержимого. Вы можете либо перенаправить пользователя на этот URL-адрес, либо предложить его в виде кликабельной ссылки.
Загрузка содержимого файла больших двоичных объектов во время длительных операций
Чтобы загрузить содержимое файлов больших двоичных объектов во время длительных операций, используйте метод files.download
с идентификатором загружаемого файла. При желании вы можете установить идентификатор ревизии. Это единственный способ загрузить файлы Google Vids. Дополнительные сведения см. в разделе Управление длительными операциями .
Экспорт содержимого документа Google Workspace
Чтобы экспортировать байтовое содержимое документа Google Workspace, используйте метод files.export
с идентификатором экспортируемого файла и правильным типом MIME . Экспортируемый контент ограничен 10 МБ.
В следующем примере кода показано, как использовать метод files.export
для экспорта документа Google Workspace в формате PDF с использованием клиентских библиотек Drive API:
Ява
Питон
Node.js
PHP
.СЕТЬ
В этом примере кода используется ограниченная область действия drive
, которая позволяет пользователям просматривать все ваши файлы на Диске и управлять ими. Дополнительную информацию об областях действия Диска см. в разделе Выбор областей действия API Google Диска .
В примере кода также объявляется экспортный тип MIME как application/pdf
. Полный список всех типов экспорта MIME, поддерживаемых для каждого документа Google Workspace, см. в разделе Экспорт типов MIME для документов Google Workspace .
Экспорт содержимого документа Google Workspace в браузер
Чтобы экспортировать содержимое документа Google Workspace в браузере, используйте поле exportLinks
ресурса files
. В зависимости от типа документа ссылка для загрузки файла и его содержимого возвращается для каждого доступного типа MIME. Вы можете либо перенаправить пользователя на URL-адрес, либо предложить его в виде кликабельной ссылки.
Экспортируйте содержимое документа Google Workspace в более раннюю версию в браузере.
Чтобы экспортировать содержимое документа Google Workspace более ранней версии в браузере, используйте метод revisions.get
с идентификатором загружаемого файла и идентификатором версии, чтобы создать ссылку экспорта, по которой можно выполнить загрузку. Если у пользователя есть доступ к скачиванию файла, возвращается ссылка для скачивания файла и его содержимого. Вы можете либо перенаправить пользователя на этот URL-адрес, либо предложить его в виде кликабельной ссылки.
Экспортируйте содержимое документов Google Workspace во время длительных операций.
Чтобы экспортировать содержимое документа Google Workspace во время длительных операций, используйте метод files.download
с идентификатором загружаемого файла и идентификатором версии. Дополнительные сведения см. в разделе Управление длительными операциями .