OpenHub
OpenHub
Войти

restlerпакет

с апстрима
скачиваний: 0

Пакет лежит в основном пуле хаба: короткой формы достаточно, если хаб прописан сервером пакетов в opm.cfg.

opm install restler

Установка на opm младше 1.7.0

Легаси-флоу. Клиент младше 1.7.0 адрес пула в аргументе не разбирает: пул сначала прописывают сервером пакетов, и только потом ставят через него. На 1.7.0 и новее этот раздел не нужен — хватает команды из шапки страницы.

Добавьте пул сервером пакетов в opm.cfg. Порт продублирован в «Сервер»: у opm push поле «Порт» не читается.

{ "СервераПакетов": [ { "Имя": "default", "Сервер": "https://hub.1cdevelopers.ru", "Порт": 443, "ПутьНаСервере": "/api/v1/pools/default/download/", "РесурсПубликацииПакетов": "/api/v1/pools/default/push", "Приоритет": 1 } ] }

И ставьте пакет, указывая сервер:

opm install -m default restler

Описание

restler

Помощник работы с различными RestAPI

Назначение

Более удобная работа с JSON API, инкапсулирующая HTTPЗапросы и Ответы в вызовы методов.


Клиент = Новый КлиентВебAPI();
Клиент.ИспользоватьСоединение(httpСоединениеСНастроеннойАвторизациейСертификатамиETC);
ИнформацияОПродажах = Клиент.Получить("sales/totals");

Для Каждого Инфо Из ИнформацияОПродажах Цикл
  Сообщить(СтрШаблон("Продано товара %1 на сумму %2", Инфо["nomenclature"], Инфо["sum"]));
КонецЦикла;

и удобная работа с OData от 1С

СоединениеERP = Новый HTTPСоединение("https://erp.example.com", 443, "superadmin", "supersecret");

КлиентERP = Новый КлиентOData();
КлиентERP.ИспользоватьСоединениеИнформационнойБазы(СоединениеERP, "prod");

ДокументМенеджерЗаказПокупателя = КлиентERP.Документ("ЗаказПокупателя");
ЗаказыПокупателей = ДокументМенеджерЗаказПокупателя.ПолучитьВсе();
	
Для Каждого Заказ Из ЗаказыПокупателей Цикл

	Сообщить(СтрШаблон("Заказ %1 - на сумму %2", Заказ["Number"], Заказ["СуммаДокумента"]), СтатусСообщения.Важное);
	
  Контрагент = КлиентERP.Справочник("Контрагенты").ПолучитьСсылку(Заказ["Контрагент_Key"]);
		
	Сообщить(СтрШаблон("Контрагент %1 - вида %2", Контрагент["Description"], Контрагент["ВидКонтрагента"]), СтатусСообщения.Важное);

КонецЦикла;

// создание элементов

РезультатПоиска = КлиентERP.Справочник("КонтактныеЛица").ТабличнаяЧасть("КонтактнаяИнформация").ОтборПоРеквизиту("Представление", Клиент["email"]);
Если РезультатПоиска.Количество() = 0 Тогда

		РекзвитыСоздания = Новый Соответствие;
		РекзвитыСоздания.Вставить("Комментарий", "Загружено автоматически из oscript.restler");

		СтрокаТабличнойЧасти = Новый Соответствие;
		СтрокаТабличнойЧасти.Вставить("Представление", Клиент["email"]);
		СтрокаТабличнойЧасти.Вставить("Тип", "АдресЭлектроннойПочты");

		мКонтактнаяИнформация = Новый Массив();
		мКонтактнаяИнформация.Добавить(СтрокаТабличнойЧасти);

		РекзвитыСоздания.Вставить("КонтактнаяИнформация", мКонтактнаяИнформация);

		КлиентERP.Справочник("КонтактныеЛица").СоздатьЭлементСправочника(Клиент["email"],РекзвитыСоздания);
		
	КонецЕсли;

Disclaimer

Активная фаза разработки. Библиотека действительно нужна