Загрузка файла
Загрузка файла на временное хранение.
Для загрузки необходимо сгенерировать uuid и передать его в качестве уникального хеш-значения для тела файла.
Для загрузки файла целиком передается заголовок Content-Range со значением bytes 0-[size]\/[size] (Например, bytes 0-1000/1000) и загружается полностью.
Возможна загрузка по частям, для этого файл должен быть разбит на равные части не меньше 5 мегабайт, кроме последней, остаток может иметь любой размер.
Размер каждой части многокомпонентной загрузки должен составлять от 5 мегабайт (5 242 880 байт) до 5 гигабайт (5 368 709 120 байт).
Оповестить сервер о том, какая из частей загружается, можно заголовком Content-Range. Заголовок задается по шаблону: bytes [range-start]-[range-end]\/[size]. (Например, bytes 0-5242880/7340032 для загрузки первой части в 5 мегабайт для файла размером 7 мегабайт и bytes 5242880-7340032/7340032 для загрузки второй части файла)
Далее необходимо инициализировать файл, иначе он будет удален как ненужный. Время хранения временного файла составляет 1 час. Инициализировать файл можно с помощью endpoint'а /disk/file/move, поместив его в директорию или сохранив в приложении.
Заголовок Content-Type должен иметь значение application/octet-stream.
В теле запроса передаются бинарные данные.
Запрос
POST /pub/v1/disk/file/upload
Параметры запроса (query)
Имя параметра | Тип | Описание | Дополнительно |
---|---|---|---|
hash | uuid | хэш файла, который будет загружаться по частям |
Обязательный |
Параметры формы
Имя параметра | Тип | Описание | Дополнительно |
---|---|---|---|
File | file | name: File |
Авторизация
Запрос обязательно должен использовать один из следующих методов авторизации:
API key
Ответ
Могут быть возвращены следующие коды состояния HTTP.
HTTP статус | Описание | Модель ответа |
---|---|---|
200 | OK Файл загружен полностью |
|
206 | Partial Content Часть файла загружена успешно |
|
400 | Bad Request Ошибка отображается в формате сообщения, описывающего проблему. Также текст ошибки может содержать следующие коды EntityTooSmall файл разбит на слишком маленькие части, InvalidPart одна из частей не найдена в хранилище, InvalidPartOrder неверный порядок частей в файле, NoSuchUpload загрузка не найдена |
|
default | Ответ после загрузки одной из частей файла |
Ответ после загрузки одной из частей файла (Загрузка файла) |