Скачивание файла с Диска
Чтобы скачать файл с Диска, необходимо:
- Запросить URL для скачивания.
- Скачать файл по полученному адресу, указав тот же OAuth-токен, что и в исходном запросе.
Запрос URL для скачивания
Чтобы получить URL для скачивания файла, необходимо передать API путь на Диске, по которому находится скачиваемый файл.
Формат запроса
Метод: GET.
https://cloud-api.yandex.net/v1/disk/resources/download
? path=<путь к скачиваемому файлу>
& [fields=<свойства, которые нужно включить в ответ>]
Описание query-параметров
- path*
-
Путь к скачиваемому файлу. Например,
%2Fbar%2Fphoto.png
.Путь в значении параметра следует кодировать в URL-формате.
- fields
-
Список свойств JSON, которые следует включить в ответ. Ключи, не указанные в этом списке, будут отброшены при составлении ответа. Если параметр не указан, ответ возвращается полностью, без сокращений.
Имена ключей следует указывать через запятую, а вложенные ключи разделять точками. Например:name,_embedded.items.path
.
* Обязательный параметр.
Заголовок
Authorization: OAuth <token>
Формат ответа
Успешный ответ
Если запрос был обработан без ошибок, API отвечает кодом 200 OK
. В теле ответа в объекте Link возвращается сгенерированный URL для скачивания файла. Время жизни ссылки на скачивание ограничено.
Пример ответа:
{
"href": "https://downloader.dst.yandex.ru/disk/...",
"method": "GET",
"templated": false
}
Описание элементов ответа
Элемент |
Описание |
|
URL. Может быть шаблонизирован, см. ключ |
|
HTTP-метод для запроса URL из ключа |
|
Признак URL, который был шаблонизирован согласно RFC 6570. Возможные значения:
|
Ответ с ошибкой
Если запрос вызвал ошибку, возвращается подходящий код ответа, а тело ответа содержит описание ошибки.
Некоторые возможные ошибки:
400
— Некорректные данные.401
— Не авторизован.404
— Путь общего диска не найден.406
— Ресурс не может быть представлен в запрошенном формате.413
— Загрузка файла недоступна. Файл слишком большой.423
— Технические работы. Сейчас можно только просматривать и скачивать файлы.429
— Слишком много запросов.503
— Сервис временно недоступен.
Скачивание файла по полученному URL
Скачивать файл следует с помощью метода GET:
https://downloader.dst.yandex.ru/disk/53139aa0et584d3bac7eeab405d3574b/535320b4/YyjTJtEHob8R5WbpojJbiiUuU2HC_2JSTU0gW9qE0NHGW2uncmBjM_-IXun3Msyij96FTHQGSX-fDL-XwokDvA%3D%3D?uid=202727674&filename=photo.png&disposition=attachment&hash=&limit=0&content_type=application%2Fx-www-form-urlencoded&fsize=34524&hid=93528043563b8r55723a253f4730290a&media_type=document
Если запрос был обработан без ошибок, API отвечает файлом с кодом 200 OK
.
Путь к скачиваемому файлу. Например, %2Fbar%2Fphoto.png
.
Путь в значении параметра следует кодировать в URL-формате.
Список свойств JSON, которые следует включить в ответ. Ключи, не указанные в этом списке, будут отброшены при составлении ответа. Если параметр не указан, ответ возвращается полностью, без сокращений.
Имена ключей следует указывать через запятую, а вложенные ключи разделять точками. Например: name,_embedded.items.path
.
Обязательный параметр.