В зависимости от того, является ли файл документом G Suite, процесс загрузки, который вы должны выполнять, различается.
Если файл для документа G Suite , вам придется использовать files.export и укажите, в какой mimeType вы хотите экспортировать файл. См. Здесь для ознакомления с различными документами Google и поддерживаемыми типами MIME для экспорта. Если вы хотите экспортировать ваш файл в разные типы MIME, в зависимости от того, какой тип он находится на диске, вы можете сначала выполнить files.get и, в зависимости от того, какой mimeType файл является файлом и на основе ссылочной таблицы, экспортировать это в соответствующем виде. Например, если MIME-тип вашего файла - application/vnd.google-apps.spreadsheet
, вы можете экспортировать его в application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.
Если файл не является документом G Suite, вы должны использовать files.get для загрузки и установки параметра alt
на media
, как объяснено в официальной документации . Вот фрагмент кода, соответствующий этому в Node.js, как указано там:
var fileId = 'your-file-id';
var dest = fs.createWriteStream('/tmp/photo.jpg');
drive.files.get({
fileId: fileId,
alt: 'media'
})
.on('end', function () {
console.log('Done');
})
.on('error', function (err) {
console.log('Error during download', err);
})
.pipe(dest);
Итак, подведя итог, я хотел бы сначала получить mimeType файла, который вы хотите экспортировать через files.get
и на основе этого mimeType (в зависимости от того, является ли файл документом G Suite и какого типа документа), загрузить файл тем или иным способом.
Ссылка:
Надеюсь, это любая помощь.