Интеграция с Google Drive API. Загрузка и получение файлов
Интересный кейс реализовали на днях для постоянного клиента. Задача была двойная. С одной стороны, реализовать раздел «Мои документы» в личном кабинете заемщика, чтобы пользователи могли загружать изображения (сканы) документов необходимых для получения займа. С другой стороны, чтобы не хранить все это на сервере сайта надо организовать транспортировку файлов в облачное хранилище Google Drive и далее иметь возможность получать список того что было загружено.
Общая система загрузки
Начальная система загрузки и хранения
С первой частью особых вопросов не было. Сделать раздел и добавить в него форму загрузки файлов является стандартной процедурой, которую наши специалисты делают с особой легкостью. Единственное на что можно обратить внимание на данном шаге, это оформление и структура сохранения файлов.
Для начала мы под каждый документ вывели клиенту отдельное поле для выбора файла. С точки зрения юзабилити это удобнее и у пользователя не возникает лишних вопросов куда какой файл добавлять. Первоначальное хранение происходит в папке загрузки сайта, создавая для каждого клиента отдельный раздел. Названия файлов генерируются системой и имеют идентификационные ключи, таким образом мы легко через автоматические процессы можем определить где какой документ, чтобы ставить в кабинете пользователя отметки какие документы уже загружены.
Обмен с Google Drive через API
Загрузка списка файлов из папки Google Drive
Общий каркас обмена мы выстроили с помощью готовой официальной библиотеки google-api-php-client-2.4.0. Тут важно не перепутать момент с источником. Если вы используете Composer, инструкция по установке есть тут . А если вы загружаете полный архив релиза, то скачивать надо здесь .
Далее, когда у вас библиотека установлена и подключена, первое с чего мы начинаем это авторизуемся по токену, чтобы обмен был возможен. Тут чаще всего сталкиваются с вопросом — как сделать токен самообновляемым? Ведь он выпускается на ограниченное количество времени (на час обычно). И если не автоматизировать процесс его обновления, то пользователю будет выдаваться ошибка подключения и как следствие ни загрузка, ни получения файлов работать не будет.
Чтобы этой проблемы не было достаточно добавить следующие три строчки в блоке авторизации (чуть ниже покажем весь код):
Используя эту схему, мы получили токен один раз, чтобы связать сайт с нашим приложением, которое использует Google Drive API. Сам токен сохраняется в файле, а для дополнительной безопасности в приложении ограничиваются запросы только с домена сайта, а другие источники блокируются.
Идем далее, перед тем как загружать файлы, надо проверить не были ли они загружены ранее на облачный диск. Для этого мы делаем запрос на получение папки пользователя. Узнаем ее id в облаке и по нему уже получаем список хранимых в ней файлов. Сам список мы сохраняем в сессию, чтобы не запрашивать его при каждом обновлении страницы, а сбрасывать только при новой загрузке или при последующих входах пользователя. Вот кусок кода этого процесса:
Экспорт локальных файлов на внешнее хранилище
Теперь когда мы получили список имеющихся файлов, можно выводить форму и поля загрузки недостающих документов. После запуска процесса и сохранения файлов локально, делаем попытку отправить их в облако. Если не получится, то файлы не пропадут, ведь они у нас есть локально. А чтобы не мучить клиента попытками повторных попыток, мы откладываем передачу на другой скрипт, который выполняется по расписанию — проверяет наличие не отправленных файлов.
При сохранении мы так же проверяем сначала наличие папки пользователя на Google Drive. Если ее нет, то создаем и, используя полученный id в поле parents, сохраняем в нее файлы. По факту, процесс загрузки файлов сводится к тому, что в облаке сначала создается сам файл с нужным названием, а далее в него передается содержимое локального файла. Стоит так же быть внимательным с кодировкой, если у вас сайт в windows-1251, не забудьте конвертировать передаваемые данные в UTF-8.
Само сохранение в гугл, выглядит так:
Как видно по коду, после передачи файла в хранилище он удаляется из локальной папки и более не занимает место на хостинге сайта.
Резюме и вопросы по Google Drive API
Финальный скрипт получился такой:
Мы тут не описывали весь процесс создания приложения гугл, но можем ответить на наиболее часто возникающие вопросы.
С чего начать интеграцию с API Google Drive?
Используем для этого стандартную консоль разработчика гугл. Добавляем приложение и ставим в возможностях использование API нужного сервиса (гугл драйва).
Как первично получить токен (AccessToken) для дальнейшей синхронизации
Внутри библиотеки google-api-php-client-2.4.0, есть готовые пример для получения начального токена. При корректных настройках, о которых мы писали выше — setAccessType(«offline») — получаем и сохраняем результат в файл для дальнейшего использования.
Как изменить папку загрузки в Chrome

По умолчанию все загружаемые файлы в браузере Google Chrome попадают в папку “Загрузки” по пути C:\Users\имя пользователя\Downloads . В браузере Chrome для загрузки файлов вы можете выбрать любую папку на вашем компьютере, и далее мы рассмотрим как это сделать.
1. Откройте Chrome => нажмите на три точки справа вверху и зайдите в “Настройки”.

2.Опуститесь в самый низ и нажмите на “Дополнительные”.

3. Если вы хотите каждый раз при загрузке файла указывать папку для сохранения – в пункте “Скачанные файлы” напротив “Всегда указывать место для скачивания” нажмите на переключатель. Чтобы изменить папку для загрузки файлов нажмите на “Изменить”.

4. Выберите нужную папку и нажимаем на “ОК”.

Закройте настройки, с этого момента все скачанные файлы будут попадать в выбранную вами папку.
Для работы с папкой загрузки и загруженными файлами – зайдите в три точки справа вверху => выберите “Загрузки” ( можно просто нажать клавиши Ctrl +j).

Вы увидите список загруженных файлов и сможете как удалить их из списка, так и открыть папку в которой они находятся.

На сегодня все, если знаете другие способы – пишите в комментариях! Удачи Вам
Как сделать браузер снова быстрым;
Как создать свою тему Google Chrome;
Устранение неполадок Google Chrome
Разнорабочий в области IT. Занимается поддержкой пользователей, сопровождением программного обеспечения.
А ещё у нас есть
Добавить или удалить “Открыть с помощью” из контекстного меню в Windows 11
Выбрать приложение по умолчанию в Windows 11
Сбросить приложение по умолчанию для типов файлов в Windows 11
Переместить или восстановить расположение папки Загрузки по умолчанию в Windows 11
2 комментария
Уважаемые. Подскажите ка решить проблему. Не знаю в чём причина, но в какой-то момент при загрузки файла в почту, стала открывать только папка “Загрузки” и ничего более. Перехода на другие папки просто нет. И теперь, чтобы отправить файл, я его предварительно копирую в папку “Загрузки”. В настройках появляется только эта папка C:\Users\1\Downloads без вариантов. Галочка пункта “Всегда указывать место для скачивания” не изменяет ничего. Система “Windows 8.1 для одного языка”. На других браузерах тоже самое. Изменений нет.
очень интересно, хотелось бы увидеть ваш компьютер и поискать варианты решения. На сколько я понял в любом браузере вы вложение для отправки можете выбрать только с “Загрузки”, это в любой почте или только в определенной? Также загружаются файлы только в эту папку, ее местонахождение изменить в браузере не получается, а если зайти через проводник в C:\Пользователи\имя пользователя\ нажать на download правой клавишей мыши – свойства – расположение – переместить. Так пустит изменить место? Такие вещи мне кажется запрещаются где-то в групповых политиках или в редакторе реестра, если вы сами ничего не меняли и за ваш компьютер не садились другие вредители – рекомендую поискать вредоносное программное обеспечение на вашем компьютере. Первым делом убрать все кроме антивируса с автозагрузки, также просканировать систему с помощью zemana и malwarebytes (используйте пробные версии, не нужно покупать эти программы) и дальше сообщить о результате.
Как изменить папку Загрузки в Windows 10

По умолчанию большинство браузеров и программ при скачивании по умолчанию используют системную папку «Загрузки», которая фактически находится в C:\Users\Имя_пользователя\Downloads (C:\Пользователи\Имя_Пользователя\Загрузки). Однако, это не всегда удобно: например, перемещение этой папки может пригодиться, когда у вас в Windows 10 несколько пользователей, но требуется, чтобы все они использовали одну папку для скачиваемых файлов.
В этой инструкции для начинающих о том, как изменить папку «Загрузки» в Windows 10 (а точнее — её расположение по умолчанию, т.е. переместить папку, в том числе и на другой диск), а также некоторая дополнительная информация, которая может оказаться полезной при действиях с этой папкой.
Изменение расположения папки «Загрузки»
Для того, чтобы переместить папку «Загрузки» в Windows 10 достаточно выполнить следующие простые шаги:
- В проводнике Windows 10 нажмите правой кнопкой мыши по папке «Загрузки» и откройте её свойства.

- На вкладке «Расположение» нажмите «Переместить» и выберите другую папку на компьютере, где вы хотите расположить папку загрузок. Внимание: не указывайте в качестве папки загрузок корень какого-либо диска, это может вызвать проблемы в дальнейшем.

- Нажмите кнопку «Применить» и в диалоговом окне ответьте, требуется ли переместить в новую папку уже имеющиеся в папке «Загрузки» файлы (это может занять время) или не нужно.

- Дождитесь окончания перемещения файлов (если вы выбрали этот вариант) в новую папку.
На этом процесс будет завершен: браузеры и другие программы, которые скачивают файлы в системную папку «Загрузки» теперь будут скачивать их в новую, указанную вами папку.
Изменение папки загрузок в браузерах и программах
Большинство браузеров и многие другие программы, скачивающие файлы из Интернета, имеют собственные настройки, позволяющие указать, куда именно их следует загружать по умолчанию. Обычно, используется заданная системой папка, но не всегда.

В разных программах это реализовано по-разному, но почти всегда нужные параметры можно найти в настройках. Например, в Google Chrome потребуется открыть настройки, открыть дополнительные параметры и указать папку в разделе «Скачанные файлы», как на скриншоте выше (а можно включить параметр, чтобы всякий раз при скачивании запрашивалось расположение, куда нужно размещать файл).
Отключение группировки по дате в папке «Загрузки»
В последней версии Windows 10 файлы в папке «Загрузки» по умолчанию группируются по дате, что не всегда удобно для использования.

Чтобы включить стандартный вид, находясь в этой папке нажмите в пустом месте проводника правой кнопкой мыши, выберите пункт «Группировка», а затем — пункт «Нет».
А вдруг и это будет интересно:
- Лучшие бесплатные программы для Windows
- Как удалить пользователя Windows 11
- В манифесте указана неизвестная структура в Microsoft Store — варианты решения
- Как добавить комментарии, теги и рейтинги к папке Windows
- Не удается войти в учетную запись Windows — как исправить?
- Некоторые параметры задает системный администратор в параметрах электропитания — как исправить?
- Windows 11
- Windows 10
- Android
- Загрузочная флешка
- Лечение вирусов
- Восстановление данных
- Установка с флешки
- Настройка роутера
- Всё про Windows
- В контакте
- Одноклассники
-
миша 06.07.2019 в 16:07
- Dmitry 07.07.2019 в 16:12
- Dmitry 08.07.2019 в 10:53
Как настроить папку загрузки в Google Chrome
Каждый пользователь использует Интернет не только для просмотра какой-то информации, но и для скачивания медиафайлов, дополнения своей персональной коллекции новыми объектами. В связи с этим вопрос о том, как поменять папку загрузки в Google Chrome, стоит остро. Помимо представления эффективного метода решения проблемы, мы также рассмотрим особенности процедуры.
Инструкция
В нашей ситуации не нужно выдумывать велосипед и искать конспирологические методики там, где это не требуется.
Разработчики оставили пользователям эффективный способ изменения хранилища, куда добавляются скачанные файлы.
Для его изменения:
- Запускаем Гугл Хром и переходим в пользовательские настройки путем клика ЛКМ по главной кнопке (в виде троеточия) напротив адресной строки и выбора соответствующего раздела меню.

- В новом окне пролистываем страницу до пункта «Дополнительные», там ищем блок «Скачанные файлы».
- Под ним указан адрес сохранения скачанных объектов, для его изменения достаточно кликнуть ЛКМ по соответствующей кнопке.

- Вызывается Проводник, с помощью которого определяется новое место жительства для картинок и видео.
- Подтверждаем серьезность намерений и изменения вступают в силу мгновенно.
- Также можно активировать возможность «Всегда указывать место для скачивания». Так вы получаете возможность сохранять файлы в любое место ПК по необходимости.
Подведем итоги
Настройка папки загрузки в Хром не отличается сложностью и доступна для каждого пользователя Сети. Разработчики оставили удобный инструментарий для работы с загрузками и изменению места их хранения.
