Подключение к сайту и отправка или получение данных по API (POST, GET...) (с описанием кода)

Публикация № 1106730

Разработка - Системная интеграция - Интеграция с WEB

Обработка оправка отсылка получение API HTTP POST GET JSON PATCH PUT DELETE XML получить сайт данные 1С.

28
Простая обработка по отправке или получение данных с любого сервера главное знать ресурс (выполняемую функцию) и тело запроса.

Стояла задача отправить данные по API на внешний сервер из 1С, задача достаточно тривиальная, но возникли некоторые сложности поскольку у меня никак не выходило отправить данные через POST. После того как была написана данная обработка сразу смог определить проблему.

Тестировалось в УПП 1.3 (8.3.9.2170)

В моем соединении нету пользователя, пароля, не используется защищенное соединение. Если Вам необходимы эти параметры их можно добавить в строке "Все параметры подключения" и вынести поля на форму или написать комментарий я обновлю обработку.

Основной код отправки данных из описанного функционала (у меня использовалось только GET и POST, остальное добавил вдруг кому пригодится):

Процедура ОсновныеДействияФормыPOST(Кнопка)
	ВыполнитьСоединение("POST");	
КонецПроцедуры

Процедура ОсновныеДействияФормыGET(Кнопка)
	ВыполнитьСоединение("GET");
КонецПроцедуры

Процедура ОсновныеДействияФормыPATCH(Кнопка)
	ВыполнитьСоединение("PATCH");
КонецПроцедуры

Процедура ОсновныеДействияФормыPUT(Кнопка)
	ВыполнитьСоединение("PUT");
КонецПроцедуры

Процедура ОсновныеДействияФормыDELETE(Кнопка)
	ВыполнитьСоединение("DELETE");
КонецПроцедуры

Процедура ВыполнитьСоединение(ВидЗапроса)
	
	ЗаголовокHTTP = Новый Соответствие();	
	//Все параметры подключения
	//HTTPСоединение = Новый HTTPСоединение(Сервер,Порт,Пользователь,Пароль,Прокси,Таймаут,ЗащищенноеСоединение,ИспользоватьАутентификациюОС);
	HTTPСоединение = Новый HTTPСоединение(Сервер,Порт,,,,,);
    HTTPЗапрос     = Новый HTTPЗапрос(Ресурс, ЗаголовокHTTP);
	HTTPЗапрос.Заголовки.Вставить("Content-type", ContentType);
	HTTPЗапрос.УстановитьТелоИзСтроки(Тело,"UTF-8");	
	Если ВидЗапроса = "POST" Тогда
		HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
	ИначеЕсли ВидЗапроса = "GET" Тогда
		HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос);
	ИначеЕсли ВидЗапроса = "PATCH" Тогда
		HTTPОтвет = HTTPСоединение.Изменить(HTTPЗапрос);
	ИначеЕсли ВидЗапроса = "PUT" Тогда
		HTTPОтвет = HTTPСоединение.Записать(HTTPЗапрос);
	ИначеЕсли ВидЗапроса = "DELETE" Тогда
		HTTPОтвет = HTTPСоединение.Удалить(HTTPЗапрос);
	КонецЕсли;
    КодСостояния   = HTTPОтвет.КодСостояния;
    ТекстОтвета    = HTTPОтвет.ПолучитьТелоКакСтроку();
	Ответ = "";
	Ответ = Ответ + "Код состояниия (Status code): " + Символы.ПС;
	Ответ = Ответ + КодСостояния + Символы.ПС +"-----------------------" +Символы.ПС;
	Ответ = Ответ + "Текст ответа (Response text): " + Символы.ПС;
	Ответ = Ответ + ТекстОтвета;
	
КонецПроцедуры

Кнопки "JSON", "XML", "POST=" - показывают пример заполнения тела в данном формате (я их использовал для тестирования отправки своих данных в разных форматах). 

Можете поблагодарить, если Вам помог описанный функционал. 

28

Скачать файлы

Наименование Файл Версия Размер
Подключение к сайту и отправка или получение данных по API (POST, GET...) (с описанием кода):
.epf 9,67Kb
12.08.19
8
.epf 9,67Kb 8 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. webester 30 12.08.19 15:51 Сейчас в теме
Для простых случаев мне нравится использовать вот этот пример с ИТС https://its.1c.ru/db/metod8dev#content:5574:hdoc он покрывает практически весь нужный функционал с анализом ответов сервера и переадресациями.
AllexSoft; +1 Ответить
3. Rustig 1284 14.08.19 15:51 Сейчас в теме
4. webester 30 14.08.19 17:26 Сейчас в теме
(3)Если много работаешь с HTTP запросами посмотри на коннектор https://infostart.ru/public/709325/
5. Rustig 1284 14.08.19 17:28 Сейчас в теме
2. dsdred 1292 13.08.19 15:42 Сейчас в теме
Если ВидЗапроса = "POST" Тогда
HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
ИначеЕсли ВидЗапроса = "GET" Тогда
HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос);
ИначеЕсли ВидЗапроса = "PATCH" Тогда
HTTPОтвет = HTTPСоединение.Изменить(HTTPЗапрос);
ИначеЕсли ВидЗапроса = "PUT" Тогда
HTTPОтвет = HTTPСоединение.Записать(HTTPЗапрос);
ИначеЕсли ВидЗапроса = "DELETE" Тогда
HTTPОтвет = HTTPСоединение.Удалить(HTTPЗапрос);
КонецЕсли;


Попробуйте заменить на вот это:

HTTPОтвет = HTTPСоединение.ВызватьHTTPМетод(ВидЗапроса,HTTPЗапрос);

Пример: https://infostart.ru/public/886103/
MaxPowerr; user774630; +2 Ответить
Оставьте свое сообщение

См. также

Перенос данных УТ 10.3 => УТ 11 / КА 2 / ERP 2 (ЕРП 2) (документы, остатки и справочная информация из "1С:Управление торговлей, ред. 10.3" в УТ 11 / КА 2 / ERP 2). Обновлен до УТ 10.3.56.х, УТ 11.4.10.х, КА 2.4.10.х и ERP 2.4.10.х! Промо

Уже более 100 компаний приобрели перенос и выполнили переход на УТ 11 / КА 2 / ERP 2 с помощью нашей разработки! Обработка перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2 позволяет перенести не только остатки на указанную дату (как типовой перенос), но и все возможные документы за выбранный период. При выходе новых релизов этих программ оперативно выпускаем обновление обработки. Предоставляем техническую поддержку. Можем сделать бесплатный тестовый перенос!

29700 руб.

Автозаполнение адреса по КЛАДР в УПП при выгрузке контрагента с портала компании (API dadata) 26

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

Заведение, согласование контрагентов организовано на портале компании. Далее по web-сервису контрагенты выгружаются в УПП (юр.адрес и факт.адрес выгружаются строкой). Задача автоматизировать заполнение адреса в УПП по КЛАДР.

1 стартмани

03.12.2019    2031    1    John_d    10       

Работа с Яндекс-картами в 1С (вывод меток, прокладка маршрута, отображение балуна, вывод меток в кластеры) (обычное и управляемое приложение) 44

Отчеты и формы Программист Пользователь Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) WEB

Работа с Яндекс-картами в 1С (управляемое приложение). Обработка показывает, как можно найти адреса на карте Яндекс, проложить маршрут.

1 стартмани

20.11.2019    4827    42    Diana.dedov.91    0       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

"Живые" картинки со Snap.SVG 64

Статья Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования WEB Работа с интерфейсом

В статье рассмотрен пример использования http-сервисов для визуализации данных

1 стартмани

24.10.2019    5685    11    blackhole321    4       

Базовый курс для начинающих 1С-программистов. Пятый поток. Онлайн-курс с 12 февраля по 15 апреля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500/9500 рублей

Яндекс сервисы [Расширение] 39

Инструменты и обработки no Расширение (cfe) v8 1cv8.cf Абонемент ($m) Универсальные обработки WEB

Расширение для работы с Яндекс-сервисами (предиктор,переводчик,проверка орфографии)

1 стартмани

24.10.2019    4678    6    noprogrammer    2       

Интеграция 1С с сайтом (магазином) WordPress (WooCommerce) с помощью Rest API сайта. Часть 1. Авторизация 42

Статья Программист Конфигурация (md, cf) v8 Windows Абонемент ($m) WEB

Интеграция 1С с сайтом (магазином) WordPress (WooCommerce) с помощью функционала Rest API предоставляемого платформой (CMS) WordPress (WooCommerce). Без дополнительных приложений на PHP/вставьте сюда любой другой язык программирования/.

1 стартмани

12.10.2019    6128    5    osivv    28       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Telegram бот на 1С 45

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

Telegram бот на 1С в виде внешней обработки, встраиваемой в типовые 1С 8.3.

1 стартмани

24.09.2019    6136    17    budidich    17       

Базовый курс по разработке мобильных 1C-приложений для Android-устройств. Третий поток. Онлайн-интенсив с 11 февраля по 05 марта 2020 г. Промо

Данный онлайн-курс предусматривает изучение базовых принципов создания приложений для операционной системы Android, работающих на мобильной платформе “1С:Предприятие”. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие” при разработке прикладных решений для “обычных” компьютеров, но пока ещё не занимался разработкой 1С-приложений, предназначенных для работы на мобильных устройствах.

7500 рублей

Выгрузка номенклатуры в социальную сеть Вконтакте 34

Инструменты и обработки no Внешняя обработка (ert,epf) v8 1cv8.cf Оптовая торговля Розничная торговля Абонемент ($m) WEB

Обработка для быстрой и легкой выгрузки товаров Вконтакт. Так просто еще не было)))

2 стартмани

14.08.2019    4950    16    kalyuzhny    25       

Путеводитель по истории релизов 37

Отчеты и формы Системный администратор Программист Внешний отчет (ert,erf) v8 1cv8.cf Абонемент ($m) WEB

Отчет по истории выпуска релизов и анализа информации по обновлениям.

5 стартмани

13.08.2019    5634    7    YPermitin    15       

Сдача регламентированной отчетности из программ 1С Промо

Сдача регламентированной отчетности из программ "1С" во все контролирующие органы без выгрузок и загрузок в другие программы. Для групп компаний действуют специальные предложения.

от 1500 руб.

Использование HTTP-сервиса для создания "фронтенда" HTML/CSS/jQuery с кэшированием 107

Статья Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) WEB

В статье описан способ создания "фронтенда" на HTML/CSS/jQuery и скрипт кеширования AJAX запросов на PHP.

1 стартмани

06.08.2019    8003    11    Sedaiko    24       

Конфигурация для обмена данными (интеграционная шина) 28

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Windows Абонемент ($m) Внешние источники данных WEB

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

4 стартмани

08.07.2019    4803    19    miha-28    15       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Шаблон http-сервиса для вашего проекта 91

Инструменты и обработки Программист Архив с данными v8 v8::Mobile 1cv8.cf Абонемент ($m) Внешние источники данных WEB Мобильная разработка

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    9914    60    MarkoSokolov    47       

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки 127

Статья Программист Архив с данными v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных Обмен через XML WEB Разработка

В этой статье мы рассмотрим путь и основные моменты создания небольшого вэб-сервиса, который мы называем "Онлайн Прайс-лист". Выгрузка из 1С, бэкенд, фронтенд, получение заказов в 1С.

1 стартмани

22.04.2019    20047    21    riposte    63       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

1С и WebKit. Вариант взаимодействия 56

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) WEB

В результате перехода на WebKit тип свойства Документ у поля, имеющего вид ПолеHTMLДокумента, изменился с COMОбъект на ВнешнийОбъект. Также изменилась DOM модель документа, доступная через это свойство.

2 стартмани

23.02.2019    14350    47    mi1man    44       

Строим маршруты на картах в 1С с помощью OpenStreetMap, OSRM и Leaflet 79

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Транспорт, автопарки, такси Абонемент ($m) WEB

Краткая статья о том как вывести на карту (в 1С) маршруты с помощью OpenStreetMap, OSRM и Leaflet. По данной системе очень мало примеров, но так как OpenStreetMap является бесплатным сервисом и не требует никаких ключей и регистраций, и является довольно мощным механизмом, решил написать небольшую статью "как это сделать?". В первую очередь скажу, все намного проще, если вы используете последнюю версию платформы (8.3.14), где есть поддержка практически всех браузеров (IE 11, EDGE, Mozilla), но что делать если у нас не самая свежая платформа, где поддержка только IE 9?

2 стартмани

12.02.2019    13380    67    Ditron    30       

22 января состоится вебинар "Использование технологии блокчейн в 1С" Промо

На вебинаре вы узнаете как использовать современную технологию блокчейн при проектировании и создании учетных систем, почему эту технологию следует рассматривать как одну из базовых. Ведущий Михаил Калимулин поделится своими знаниями основ технологии и опытом внедрения.

990 рублей

Яндекс карта в документе "Заказ клиента" на закладке "Доставка". (Расширение) УТ 11.4 28

Инструменты и обработки Пользователь Расширение (cfe) v8 УТ11 Россия УУ Оптовая торговля Абонемент ($m) Обработка документов WEB

Показ яндекс карты в документе "Заказ клиента" на закладке "Доставка" и печать карты для курьера с контактными данными. (Расширение)

3 стартмани

05.02.2019    5354    11    ret    6       

Яндекс карты 2.1. Построение маршрута. Передача длины маршрута в реквизит формы 44

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

Пригодится как пример использования Яндекс карты 2.1 для построения маршрута.

1 стартмани

24.01.2019    6907    54    John_d    32       

Перенос данных УПП 1.3 => ERP 2 (ЕРП) / УТ 11 / КА 2.х (обработка переноса документов, остатков и справочников из "1С:Управление производственным предприятием, ред. 1.3" в ERP / УТ 11 / КА 2). Обновлен до УПП 1.3.130.х, КА 2.4.11.х и ERP 2.4.11.х! Промо

Обработка позволяет переносить из УПП 1.3 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления при выходе новых релизов конфигураций 1С.

29700 руб.

Проверка VAT номеров 2

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

Обработка для вызова сервиса проверка VAT номера.

1 стартмани

26.11.2018    5911    wtlz    0       

Веб-форма авторизации/регистрации/восстановления пароля для веб-клиента 1С с помощью HTML/CSS/PHP/HTTP-сервисов 1С 29

Инструменты и обработки Программист Архив с данными v8 1cv8.cf Абонемент ($m) WEB

Пришла в голову идея создать универсальную веб-форму входа в веб-клиент 1С на HTML/CSS/PHP/HTTP-сервисы 1С. Чтобы прямо как на нормальных сайтах. Заодно и для ознакомления с 1С с новой, для себя, стороны. Интересно было попробовать интеграцию PHP - 1С.

1 стартмани

08.11.2018    9676    21    Бэнни    15       

INFOSTART MEETUP Kazan. 13 марта 2020 г. Промо

Инфостарт продолжает путешествие по России. Следующая остановка - Казань. Тема мероприятия - управление и технологии автоматизации учета на платформе "1С: Предприятие". Ждем всех: докладчиков и участников! Стоимость участия - 5 500 рублей. Цена действительна до 30.01.2020

5 500

Загрузка чека онлайн-касс (загрузка товаров из чека) 39

Инструменты и обработки Системный администратор Программист Бухгалтер Внешняя обработка (ert,epf) v8 1cv8.cf Кассовые операции Розничная торговля Абонемент ($m) Внешние источники данных WEB

Обработка-пример, позволяет любому и из любой конфигурации загрузить информацию о товарах из чека(и не только) с сервера ФНС proverkacheka.nalog.ru

2 стартмани

08.10.2018    10253    26    echo77    33       

Работа с публикациями "Инфостарт" 15

Инструменты и обработки Программист Архив с данными v8 УУ Абонемент ($m) Практика программирования О сообществе WEB

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    11632    12    RocKeR_13    16       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

SOAP для чайников 91

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Обмен через XML WEB

Немножко про SOAP сервис. И пример работы с подключением и получением данных по SOAP за 5 минут.

1 стартмани

05.09.2018    25925    29    dusha0020    18       

Класс-обработка “Работа с картами Яндекс” 60

Инструменты и обработки Программист Конфигурация (md, cf) v8 Абонемент ($m) Разработка внешних компонент WEB

Как показать точку или маршрут на карте Яндекс. Как получить координаты по строке адреса (геокодирование).

1 стартмани

01.08.2018    14305    141    RSConsulting    13