mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-01-12 04:34:10 +02:00
Yandex Disk: создание и получение каталога
This commit is contained in:
parent
83aa446dd6
commit
6d89c40052
69
OPI/src/CommonModules/OPI_YandexDisk/Module.bsl
Normal file
69
OPI/src/CommonModules/OPI_YandexDisk/Module.bsl
Normal file
@ -0,0 +1,69 @@
|
||||
#Область ПрограммныйИнтерфейс
|
||||
|
||||
#Область РаботаСФайламиИПапками
|
||||
|
||||
Функция ПолучитьИнформациюОДиске(Знач Токен) Экспорт
|
||||
|
||||
Заголовки = ЗаголовокАвторизации(Токен);
|
||||
Ответ = OPI_Инструменты.Get("https://cloud-api.yandex.net/v1/disk", , Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция СоздатьПапку(Знач Токен, Знач Путь) Экспорт
|
||||
|
||||
Заголовки = ЗаголовокАвторизации(Токен);
|
||||
URL = "https://cloud-api.yandex.net/v1/disk/resources";
|
||||
|
||||
Параметры = Новый Структура;
|
||||
Параметры.Вставить("path", Путь);
|
||||
|
||||
Параметры = OPI_Инструменты.ПараметрыЗапросаВСтроку(Параметры);
|
||||
Ответ = OPI_Инструменты.Put(URL + Параметры, , Заголовки, Ложь);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьОбъект(Знач Токен, Знач Путь) Экспорт
|
||||
|
||||
Заголовки = ЗаголовокАвторизации(Токен);
|
||||
Параметры = Новый Структура;
|
||||
Параметры.Вставить("path", Путь);
|
||||
|
||||
Ответ = OPI_Инструменты.Get("https://cloud-api.yandex.net/v1/disk/resources", Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция УдалитьОбъект(Знач Токен, Знач Путь, Знач ВКорзину = Истина) Экспорт
|
||||
|
||||
Заголовки = ЗаголовокАвторизации(Токен);
|
||||
Параметры = Новый Структура;
|
||||
Параметры.Вставить("path" , Путь);
|
||||
Параметры.Вставить("permanently", Не ВКорзину);
|
||||
|
||||
Ответ = OPI_Инструменты.Delete("https://cloud-api.yandex.net/v1/disk", Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФнукции
|
||||
|
||||
Функция ЗаголовокАвторизации(Знач Токен) Экспорт
|
||||
|
||||
Заголовки = Новый Соответствие;
|
||||
Заголовки.Вставить("Authorization", "OAuth " + Токен);
|
||||
|
||||
Возврат Заголовки;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
10
OPI/src/CommonModules/OPI_YandexDisk/OPI_YandexDisk.mdo
Normal file
10
OPI/src/CommonModules/OPI_YandexDisk/OPI_YandexDisk.mdo
Normal file
@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="af0b34e8-10fa-414f-a643-915210c6289a">
|
||||
<name>OPI_YandexDisk</name>
|
||||
<synonym>
|
||||
<key>ru</key>
|
||||
<value>Методы работы с Yandex Disk (ОПИ)</value>
|
||||
</synonym>
|
||||
<server>true</server>
|
||||
<externalConnection>true</externalConnection>
|
||||
</mdclass:CommonModule>
|
@ -3,7 +3,7 @@
|
||||
<name>OPI_YandexID</name>
|
||||
<synonym>
|
||||
<key>ru</key>
|
||||
<value>Yandex ID</value>
|
||||
<value>Методы работы с Yandex ID (ОПИ)</value>
|
||||
</synonym>
|
||||
<server>true</server>
|
||||
<externalConnection>true</externalConnection>
|
||||
|
@ -25,6 +25,8 @@
|
||||
|
||||
#Область HTTPМетоды
|
||||
|
||||
// Без тела
|
||||
|
||||
Функция Get(Знач URL, Знач Параметры = "", Знач ДопЗаголовки = "") Экспорт
|
||||
Возврат ВыполнитьЗапросБезТела(URL, "GET", Параметры, ДопЗаголовки);
|
||||
КонецФункции
|
||||
@ -33,6 +35,20 @@
|
||||
Возврат ВыполнитьЗапросБезТела(URL, "DELETE", Параметры, ДопЗаголовки);
|
||||
КонецФункции
|
||||
|
||||
// С телом
|
||||
|
||||
Функция Post(Знач URL, Знач Параметры = "", Знач ДопЗаголовки = "", Знач JSON = Истина) Экспорт
|
||||
Возврат ВыполнитьЗапросСТелом(URL, "POST", Параметры, ДопЗаголовки, JSON);
|
||||
КонецФункции
|
||||
|
||||
Функция Patch(Знач URL, Знач Параметры = "", Знач ДопЗаголовки = "", Знач JSON = Истина) Экспорт
|
||||
Возврат ВыполнитьЗапросСТелом(URL, "PATCH", Параметры, ДопЗаголовки, JSON);
|
||||
КонецФункции
|
||||
|
||||
Функция Put(Знач URL, Знач Параметры = "", Знач ДопЗаголовки = "", Знач JSON = Истина) Экспорт
|
||||
Возврат ВыполнитьЗапросСТелом(URL, "PUT", Параметры, ДопЗаголовки, JSON);
|
||||
КонецФункции
|
||||
|
||||
// BSLLS:CognitiveComplexity-off
|
||||
|
||||
Функция PostMultipart(Знач URL, Знач Параметры, Знач Файлы = "", Знач ТипКонтента = "image/jpeg",
|
||||
@ -140,14 +156,6 @@
|
||||
|
||||
// BSLLS:CognitiveComplexity-on
|
||||
|
||||
Функция Post(Знач URL, Знач Параметры = "", Знач ДопЗаголовки = "", Знач JSON = Истина) Экспорт
|
||||
Возврат ВыполнитьЗапросСТелом(URL, "POST", Параметры, ДопЗаголовки, JSON);
|
||||
КонецФункции
|
||||
|
||||
Функция Patch(Знач URL, Знач Параметры = "", Знач ДопЗаголовки = "", Знач JSON = Истина) Экспорт
|
||||
Возврат ВыполнитьЗапросСТелом(URL, "PATCH", Параметры, ДопЗаголовки, JSON);
|
||||
КонецФункции
|
||||
|
||||
Функция ПараметрыЗапросаВСоответствие(Знач СтрокаПараметров) Экспорт
|
||||
|
||||
СоответствиеВозврата = Новый Соответствие;
|
||||
@ -372,6 +380,7 @@
|
||||
Возврат ТелоОтвета;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#Область GZip
|
||||
|
||||
// Описание структур см. здесь https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT
|
||||
|
@ -58,4 +58,5 @@
|
||||
<commonModules>CommonModule.OPI_Notion</commonModules>
|
||||
<commonModules>CommonModule.OPI_Криптография</commonModules>
|
||||
<commonModules>CommonModule.OPI_YandexID</commonModules>
|
||||
<commonModules>CommonModule.OPI_YandexDisk</commonModules>
|
||||
</mdclass:Configuration>
|
||||
|
Loading…
Reference in New Issue
Block a user