From 119215b3c0846ce46d346a410e8dbe609bf2ed5c Mon Sep 17 00:00:00 2001 From: Anton Date: Sun, 4 Feb 2024 14:51:31 +0300 Subject: [PATCH] =?UTF-8?q?Yandex=20Disk:=20=D0=97=D0=B0=D0=B3=D1=80=D1=83?= =?UTF-8?q?=D0=B7=D0=BA=D0=B0=20=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=20=D0=BF?= =?UTF-8?q?=D0=BE=20URL,=20=D0=BF=D0=BE=D0=BB=D1=83=D1=87=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=BF=D1=83=D0=B1=D0=BB=D0=B8=D1=87=D0=BD=D0=BE?= =?UTF-8?q?=D0=B3=D0=BE=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=BA=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CommonModules/OPI_YandexDisk/Module.bsl | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/OPI/src/CommonModules/OPI_YandexDisk/Module.bsl b/OPI/src/CommonModules/OPI_YandexDisk/Module.bsl index d36006b39..4825d7132 100644 --- a/OPI/src/CommonModules/OPI_YandexDisk/Module.bsl +++ b/OPI/src/CommonModules/OPI_YandexDisk/Module.bsl @@ -240,6 +240,31 @@ КонецФункции +// Загрузить файл по URL. +// +// Параметры: +// Токен - Строка - Токен +// Путь - Строка - Путь помещения загруженного файла +// Адрес - Строка - URL файла +// +// Возвращаемое значение: +// Строка, Произвольный, ДвоичныеДанные, Неопределено, HTTPОтвет - Ответ сервера Yandex +Функция ЗагрузитьФайлПоURL(Знач Токен, Знач Путь, Знач Адрес) Экспорт + + Заголовки = ЗаголовокАвторизации(Токен); + URL = "https://cloud-api.yandex.net/v1/disk/resources/upload"; + + Параметры = Новый Структура; + Параметры.Вставить("url" , КодироватьСтроку(Адрес, СпособКодированияСтроки.URLВКодировкеURL)); + Параметры.Вставить("path" , Путь); + + Параметры = OPI_Инструменты.ПараметрыЗапросаВСтроку(Параметры); + Ответ = OPI_Инструменты.Post(URL + Параметры, , Заголовки, Ложь); + + Возврат Ответ; + +КонецФункции + #КонецОбласти #Область УправлениеПубличнымДоступом @@ -297,6 +322,38 @@ КонецФункции +// Получить публичный объект. +// +// Параметры: +// Токен - Строка - Токен +// URL - Строка - URL +// Количество - Число - Количество возвращаемых вложенных объектов (для каталога) +// СмещениеОтНачала - Число - Смещение для получение вложенных объектов не из начала списка +// +// Возвращаемое значение: +// Строка, Произвольный, ДвоичныеДанные, Неопределено - Получить публичный объект +Функция ПолучитьПубличныйОбъект(Знач Токен, Знач URL, Знач Количество = 0, Знач СмещениеОтНачала = 0) Экспорт + + Заголовки = ЗаголовокАвторизации(Токен); + + Параметры = Новый Структура; + + Если ЗначениеЗаполнено(Количество) Тогда + Параметры.Вставить("limit", OPI_Инструменты.ЧислоВСтроку(Количество)); + КонецЕсли; + + Если ЗначениеЗаполнено(СмещениеОтНачала) Тогда + Параметры.Вставить("offset", OPI_Инструменты.ЧислоВСтроку(СмещениеОтНачала)); + КонецЕсли; + + Параметры.Вставить("public_key", URL); + + Ответ = OPI_Инструменты.Get("https://cloud-api.yandex.net/v1/disk/public/resources", Параметры, Заголовки); + + Возврат Ответ; + +КонецФункции + #КонецОбласти #КонецОбласти