НТТР Коннектор для 1С:Предприятие 8

Печать (Ctrl+P)

Процедуры и функции работты с НТТР соединением по API в формате JSON

Готовый модуль процедур и функции при интеграции приложения 1С с внешными системами по методам API (Application Programming Interface или интерфейс программирования приложений).

Мододуль содержит  совокупность процедур и функций для взаимодействия в качестве клиента с сервером через HTTP соединение по методам  API, которые большинство крупных компаний разрабатывают  для клиентов с целю связать свой продукт с 1С.

Модуль рабоатет с платформой  8.3.10 и выше. Модуль продается в виде внешней обработки. Все функции и процедуры находятся в модуле обработки и имеют описание . Скопируйте модуль обработки в общий модуль прикладного решения.

Стоимость обработки с библиотекой функций и процедууре в модуле обекта стоит 5 000 руб. Для приобретения обработки обращайтеcь ко мне на почту master1c8x@mail.ru . Полный список моих дополнительных отчетов , обработок и расширений можно посмотреть здесь

Практический пример использования

Пример Функция ВыполнитьМетодAPI

Отправляет данные на указанный адрес для обработки с использованием указанного HTTP-метода. Используется при обмене с торговой плащадкой

Параметры:

  1.  HTTPМетод- Строка – имя HTTP-метода для запроса (POST,GET,PUT,DELETE).
  2.  ПараметрыЗапроса – Структура или Соответствие:
    • <Ключ> – Строка – ключ параметра в URL.
    •  <Значение> – Строка – значение параметра URL или     – Массив – сформирует строку из нескольких параметров: key=value1&key=value2 и т.д.
  3.  ApiМетод –  Строка – Имч метода API
  4.   СтруктураВозврата   – Структура возврата выполнения
    • Ошибка  – Булево ( Истина – Возникла ошибка выполнения).
    • ОтправляемоеСообщение  – Строка –  Отправляемое строковое сообщение пользователю
    • РезультатЧтения – Соответствие
  5.  ПараметрыВыполнения  – Структура параметров выполнения;
    • АдресСервера
    • ApiKey
    • ПроизводитьЛогированиеОпераций
    • УчетнаяЗапись  –   СправочникСсылка Учетной записи или ссылка на  узел плана обмена
  6.    ПараметрыЗаписиJSON – Структура – параметры, используемые при записи объекта JSON (См. в синтаксис-помощнике  описание ПараметрыЗаписиJSON)

 Возвращаемое значение:  булево  

  •   Истина – операция выполнено успешно
  •    Ложь – Операция не выполнено
Функция ВыполнитьМетодAPI(HTTPМетод, ПараметрыЗапроса, ApiМетод, СтруктураВозврата, ПараметрыВыполнения, ПараметрыЗаписиJSON = Неопределено) Экспорт

	URL = "https://" + ПараметрыВыполнения.АдресСервера + "/" + ApiМетод; 	
	Заголовки = ПолучитьЗаголовокиПодключения("json", "json");	
	Если ПустаяСтрока(ПараметрыВыполнения.ApiKey) тогда
	СтруктураВозврата.Вставить("ОтправляемоеСообщение", "Не заполнен ApiKey");
	СтруктураВозврата.Вставить("Ошибка", Истина);
	иначе
	Заголовки.Вставить("Authorization", СокрЛП(ПараметрыВыполнения.ApiKey));
	КонецЕсли;
	ополнительныеПараметры = Новый Структура("Заголовки, ПараметрыВыполнения, ПараметрыЗаписиJSON", Заголовки, ПараметрыВыполнения, ПараметрыЗаписиJSON);
	Если ТипЗнч(ПараметрыЗапроса) = Тип("Структура") тогда
	ПараметрыЗапросаОтправляемые = СтруктураВСоответствие(ПараметрыЗапроса);
	Иначе
	ПараметрыЗапросаОтправляемые = ПараметрыЗапроса;
	КонецЕсли;
//Выполнение метода
	Попытка
	Если HTTPМетод = "POST" тогда
РезультатЧтения = HTTPметодPost(URL, ПараметрыЗапросаОтправляемые, ДополнительныеПараметры);
	ИначеЕсли HTTPМетод = "GET" тогда
	РезультатЧтения = HTTPметодJson(URL, ПараметрыЗапросаОтправляемые, ДополнительныеПараметры);
	ИначеЕсли HTTPМетод = "PUT" тогда
РезультатЧтения = HTTPметодPut(URL, ПараметрыЗапросаОтправляемые, ДополнительныеПараметры);
	ИначеЕсли HTTPМетод = "DELETE" тогда
РезультатЧтения = HTTPметодDelete(URL, ПараметрыЗапросаОтправляемые, ДополнительныеПараметры);
	Конецесли;		
// Вставим результат выполнения в структуру возврата 
СтруктураВозврата.Вставить("РезультатЧтения", РезультатЧтения);

Если  РезультатЧтения <> Неопределено Тогда
СтруктураВозврата.Вставить("ОтправляемоеСообщение", "Нет ответа от "+URL+": "+ОписаниеОшибки());
СтруктураВозврата.Вставить("Ошибка", Истина);
КонецЕсли;

Исключение
СтруктураВозврата.Вставить("ОтправляемоеСообщение", "Нет ответа от "+URL+": "+ОписаниеОшибки());
СтруктураВозврата.Вставить("Ошибка", Истина);
КонецПопытки;

Возврат НЕ СтруктураВозврата.Ошибка;
КонецФункции

Вызов функциии на примере использования одного из метода api из маркетплейса Wildberries GET метод ​/api​/v1​/config​/object​/byparent – Получение списка объектов по паренту


Процедура ПолучитьСписокРеквизитовКарточкиПоПаренту(ПараметрыВыполнения, СтруктураВозврата) Экспорт
	
	ИмяМетода = "api/v1/config/object/byparent";
	СтрПарам = Новый Структура;	СтрПарам.Вставить("parent",СокрЛП(ПараметрыВыполнения.parent));
	Результат = ВыполнитьМетодAPI("GET", СтрПарам, ИмяМетода, СтруктураВозврата, ПараметрыВыполнения);
	Если Результат тогда
	РезультатЧтения = СтруктураВозврата.РезультатЧтения;
        МассивДанных = РезультатЧтения.получить("data");
	Если МассивДанных <> Неопределено тогда
	// Тут обрабатываем массив данных 
	Конецесли;
	КонецЕсли;
	
КонецПроцедуры

Стоимость обработки с библиотекой функций и процедууре в модуле обекта стоит 5 000 руб. Для приобретения обработки обращайтеcь ко мне на почту master1c8x@mail.ru . Полный список моих дополнительных отчетов , обработок и расширений можно посмотреть здесь

Previous Article
Next Article

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.