#golang #fileupload #google_drive
Есть задача загружать большие файлы (txt,docx,csv,xls) на Google Drive через API средствами с немедленной конвертацией в форматы Google языка Go, при реализации нашей программы выгрузки мы столкнулись проблемой загрузки файлов более 5МБ, так как для загрузки файлов методом: Simple upload: uploadType=media всё да вольно тривиально. Но мы не смогли пока придумать как с помощью библиотеки https://github.com/google/google-api-go-client сделать загрузку методом: Resumable upload: uploadType=resumable Так как нам необходимо выгружать таблиц по 500MB(и в плоть до 10GB) и более. Суть: нужен рабочий пример на Golang реализации функции загрузки больших (>500MB, но также поддерживающий и любой меньший размер) файлов на Google Drive через API. Кусок существующего кода отвечающий за загрузку файла: showProgress := func(current, total int64) { fmt.Printf("Uploaded at %s, %s/%s\r", getRate(current), Comma(current), Comma(total)) } r, err := d.Files.Insert(f).ResumableMedia(context.Background(), input, inputInfo.Size(), mimeType).Convert(true).ProgressUpdater(showProgress).Do() if err != nil { fmt.Printf("An error occurred: %v\n", err) return nil, err } Результат: An error occurred: googleapi: Error 400: Bad Request, badRequest
Ответы
Ответ 1
Наши желания по загрузке данных в Google таблицы не могут быть реализованы в коде по причине того что на данный счёт есть целый ряд ограничений, и наш объём данных не может быть с конвертирован в форматы Google. Мы сможем использовать Google Drive только для хранения оригинальных файлов. Какие файлы можно хранить на Google Диске Размеры файлов Ниже перечислены ограничения на размеры документов, таблиц и презентаций, которые можно хранить на Google Диске. Документы. Максимум 1 020 000 символов. Размер текстовых документов, преобразуемых в формат Google, не может превышать 50 МБ. Таблицы. Максимум 2 миллиона ячеек для файлов, созданных в Google Таблицах или преобразуемых в этот формат. Презентации. Максимальный размер файлов, преобразуемых в формат Google, составляет 100 МБ. Другие файлы. Максимум 5 ТБ. Поддерживаемые типы файлов Ниже перечислены форматы файлов, которые можно открыть на Google Диске. Обычные файлы: архивы (ZIP, RAR, TAR, GZIP); аудиофайлы (MP3, MPEG, WAV, OGG); изображения (JPEG, PNG, GIF, BMP); файлы разметки/кода (CSS, HTML,PHP, C, CPP, H, HPP, JS); текстовые файлы (TXT); видео (WebM, MPEG4, 3GPP, MOV, AVI, MPEGPS, WMV, FLV, OGG); Файлы Adobe: Autodesk AutoCad (DXF); Illustrator (AI); Photoshop (PSD); документы переносимого формата (PDF); Postscript (EPS, PS); масштабируемые векторные рисунки (SVG); изображения TIFF (рекомендуется при использовании режима RGB); TrueType (TTF). Файлы Microsoft: Excel (XLS и XLSX); PowerPoint (PPT и PPTX); Word (DOC и DOCX); XML Paper Specification (XPS). Оригинал -> Cправка - Диск
Комментариев нет:
Отправить комментарий