Как работает локальное и удаленное добавление файлов
Как работает локальное и удаленное добавление файлов
В этом руководстве подробно описан весь процесс добавления файлов с использованием API-интерфейса Frame.io V4. В нем рассматриваются необработанные запросы к API-интерфейсу и ответы как для локального, так и для удаленного добавления.
Ищете руководства по конкретным SDK? Инструкции по добавлению с встроенным разделением на фрагменты, выполнением повторных попыток и отслеживанием прогресса — в руководстве по добавлению через SDK для Python.
Предварительные требования
Перед тем как приступить к добавлению файлов, убедитесь, что вы выполнили следующие шаги по настройке.
Учетная запись Frame.io V4
У вас есть учетная запись Frame.io V4, управляемая через Adobe Admin Console, ИЛИ вы перевели пользователей своей учетной записи на аутентификацию Adobe.
Настройка Adobe Developer Console
Вы вошли в Adobe Developer Console и добавили API-интерфейс Frame.io в новый или существующий проект.
Учетные данные для аутентификации
Вы создали соответствующие учетные данные для аутентификации в своем проекте.
Выбор метода добавления
Существует два способа добавления файлов через API-интерфейс Frame.io: Создать файл (локальное добавление) и Создать файл (удаленное добавление).
Используйте этот метод, если медиафайл доступен вашему приложению локально (аналогично перетаскиванию файла с рабочего стола).
Используйте этот метод, если доступ к медиафайлу осуществляется по сети (например, в рамках интеграции с другим сервисом).
В этом руководстве мы начнем с более простого случая — удаленного добавления.
Удаленное добавление
Чтобы создать файл путем удаленного добавления, выберите конечную точку Создать файл (удаленное добавление). В теле запроса необходимо передать имя файла и URL-адрес его источника.
В настоящее время для удаленного добавления установлено ограничение на размер файла 50 ГБ. Для файлов размером более 50 ГБ используйте локальное добавление.
Пример запроса
Пример ответа
Успешный запрос вернет ответ, аналогичный приведенному ниже.
Локальное добавление
Чтобы создать файл путем локального добавления, выберите конечную точку Создать файл (локальное добавление). В теле запроса необходимо указать имя файла и его размер в байтах.
Пример запроса
Пример ответа
В случае успешного выполнения запроса создается пустой файл-заполнитель. В зависимости от размера файла тело ответа будет содержать один или несколько URL-адресов добавления upload_urls. В данном примере нам потребуется управлять добавлением частями.
Важные требования к добавлению
Ниже приведены важные детали, которые необходимо учитывать при отправке последующих запросов на добавление.
- Метод HTTP-запроса должен быть
PUT - Заголовок
x-amz-aclдолжен быть обязательно включен и иметь значение private. - Заголовок
Content-Typeдолжен соответствовать типу данныхmedia_type, указанному в исходном запросе Создать файл (локальное добавление). Это правило действует даже в том случае, если файл добавляется отдельными частями. В приведенном выше примере значениемmedia_typeявляетсяimage/jpeg. Соответственно, значениеContent-Typeтакже должно бытьimage/jpeg.
Добавление частями
Если для определенного файла создается более одного URL-адреса добавления, необходимо разделить исходный файл на фрагменты и отправить запрос PUT для каждого из них.
Рекомендация. В руководстве по добавлению с помощью SDK для Python описано добавление частями с помощью компонента FrameioUploader, который обеспечивает разделение на фрагменты, параллельное добавление, выполнение повторных попыток и отслеживание прогресса.
Если необходимо выполнить добавление вручную (например, на языке, для которого нет готового SDK, или ради полного контроля над процессом), приведенный ниже сценарий показывает, как разбить файл на фрагменты и добавить каждый из них с использованием предварительно подписанных URL-адресов.
Пример выполнения на Python
Сводка процесса добавления
Выбор метода добавления
Выберите между удаленным добавлением (файл доступен по URL-адресу) или локальным добавлением (файл находится в вашей системе).
Запрос на создание файла
Выполните первичный запрос, чтобы создать ресурс для файла с необходимыми метаданными.
Обработка URL-адресов добавления
В случае локального добавления обработайте возвращенные URL-адреса (для одной или нескольких частей).
Следующие шаги. Как только ваш файл будет добавлен, вы сможете использовать полученный идентификатор файла, чтобы оставлять комментарии, создавать общие ресурсы или выполнять другие операции, используя API-интерфейс Frame.io V4.