Учимся создавать http сервисы (часть вторая). Передача параметра в http сервис

22.09.20

Интеграция - WEB-интеграция

Пошаговое руководство по созданию http-сервиса (часть вторая). Передача параметра в http сервис.

На прошлом уроке, //infostart.ru/1c/articles/1293341/ , мы с вами научились создавать http сервис. Научились его опубликовывать. В результате работы сервиса мы получили данные из регистра сведений в виде JSON строки. Результат работы мы увидели в браузере.

Сегодня мы с вами разберем вопрос о том, как передавать параметры в http сервис.

Для чего это может быть нужно. Например, нам нужно получить информацию не о всей номенклатуре, а только о той номенклатуре, у которой определенный штрих код.

Цель: научиться передавать параметр в http сервис.

Итак, начнем.

-Откроем ветку «Общие» - «HTTP сервисы»

-Откроем http сервис «ОперацииСНоменклатурой»

-Перейдем на закладку «Шаблоны»

-Добавим новый шаблон. Назовем его «ИзучениеПередачиПараметров»

-Придумаем шаблон, например, «get_products_barcode»

До этого момента мы с вами повторили действия предыдущего занятия.

 

 

 

Перейдем к передаче параметров. Параметры в http сервисе, заключены в фигурные скобки. Например,  {beginDate} или {articul} или {} еще что-то.

 

Как можно предположить параметр {beginDate} – это какая-то начальная дата, параметр {articul} – это артикул. ИТАК, ПАРАМЕТРЫ В HTTP ЗАПРОСЕ ЗАКЛЮЧЕНЫ В ФИГУРНЫЕ СКОБКИ - {SOME_PARAMETER} - имя какого-то параметра. В нашей задаче нам нужен параметр штрих код. Таким образом мы его должны записать в фигурных скобках, вот так {barcode}. ПАРАМЕТРЫ ДОЛЖНЫ БЫТЬ НАЗВАНЫ ЛАТИНСКИМИ БУКВАМИ ПО ПРАВИЛУ СОЗДАНИЯ ИМЕН ПЕРЕМЕННЫХ.

Замечательно. Но куда этот параметр деть, куда его приложить?

А вот куда. Мы придумали имя шаблона «get_products_barcode», так вот после него и записывается параметр вот так, /get_products_barcode/{barcode}. Мы в шаблоне указали параметр.

 

 

//////////////////////////////////////////////////////

 

-В общем модуле «ОбщегоНазначения» создадим новую функцию, которая будет возвращать JSON строку с данными по номенклатуре, в зависимости от параметра штрих кода.

Функция будет называться «ПолучитьНоменклатуруПоШтрихкоду»

 

 

-В модуле http сервиса «ОперацииСНоменклатурой» - шаблон «ИзучениеПередачиПараметров» добавляем метод «ПолучитьНоменклатуруПоШтрихкоду». Далее переходим в модуль http сервиса и описываем код, который принимает параметр из Http запроса.

 

 

-Опубликовываем http сервис «ОперацииСНоменклатурой»

Меню - Администрирование - Публикация на веб-сервере

 

 

-Открываем браузер и собираем строку запроса. Как мы помним из прошлого урока строка собирается так:

Ip адрес / имя_публикации / hs / корневой_каталог / шаблон/{параметр}

localhost/my_name/hs/products/get_products/{barcode} – ТОЛЬКО ВМЕСТО ФИГУРНЫХ СКОБОК, КОНКРЕТНОЕ ЗНАЧЕНИЕ ШТРИХ КОДА, НАПРИМЕР 20000000583067

localhost/my_name/hs/products/get_products/20000000583067

 

 

Видео инструкция по передаче параметров в http сервис.

 

http web сервис apache IIS обмен данными

См. также

WEB-интеграция Администрирование веб-серверов Платные (руб)

Веб-портал обеспечивает удобный доступ к конфигурации 1С:ITIL(ИТИЛ), 1С:ITILIUM, Управление IT-отделом 8 через интернет с любого устройства посредством браузера, увеличивая эффективность работы пользователей и снижая нагрузку на сервер. Быстрая инсталляция портала за пару часов, удобный и интуитивно понятный интерфейс и безопасность данных помогут упростить работу с порталом и ускорить выполнение бизнес-процессов компании.

128000 руб.

19.12.2023    4259    5    0    

11

WEB-интеграция Анализ продаж Системный администратор Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Модуль "Подсистема интеграции AmoCRM с 1С" позволяет обеспечить единое информационное пространство, в котором пользователи могут эффективно управлять клиентской базой, следить за статусами сделок и поддерживать актуальность данных как в AmoCRM, так и в 1С.

60000 руб.

07.05.2019    35812    71    45    

30

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

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

57600 руб.

26.11.2024    3280    3    3    

5

WEB-интеграция Программист Бизнес-аналитик Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

14400 руб.

20.12.2024    1377    9    2    

11

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    19642    24    24    

20

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    5492    5    2    

6

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 1C:Бухгалтерия Управленческий учет Платные (руб)

Решение осуществляет синхронизацию задач Битрикс24 и 1С, что позволяет в одной системе ставить задачи, контролировать выполнение всего пула задач с группировкой по ответственным и проектам, формировать управленческие отчеты по работе сотрудников (загрузка, просроченные задачи), уведомлять сотрудников о ходе выполнения задач посредством чат-бот Telegram

7200 руб.

04.05.2021    21295    14    19    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. quazare 22.09.20 15:03 Сейчас в теме
Написано очень просто и примитивно - как раз для начинающих, поэтому, однозначно плюс!
kaaasteeen; mikl79; vitika_m; +3 Ответить
2. user1304317 23.09.20 14:30 Сейчас в теме
Спасибо! По больше статей ваших про XDTO к примеру)
3. malikov_pro 24.09.20 04:40 Сейчас в теме
Попробуйте к описанию добавить использование Postman и OpenAPI, чтобы новички начали изучать этот инструмент, это must have для работы с HTTP API.

Коммиты с примерами в cfe и postman коллекцией
https://github.com/malikov-pro/examples_hpi_http/commits/master
Удобно смотреть изменения по коду
https://github.com/malikov-pro/examples_hpi_http/commit/251e63bad2fa675f24ee93d94e89443­cc73d9443

Там же пример open_api документации
https://github.com/malikov-pro/examples_hpi_http/commit/5105073abcb8fedd9046009a277b89d­61fd1a610

Спойлеры лучше подписывать "Скриншот/скриншоты/{наименование модуля}",
Не мешать в одном спойлере скриншоты и код, с модулем HTTP неудобно получилось.
kaaasteeen; Ish_2; artbear; +3 Ответить
4. acvatoris 24.09.20 08:08 Сейчас в теме
По поводу Postman эта статья у меня в планах.
5. user1035175 01.10.20 09:20 Сейчас в теме
Буду ждать новые публикации. Понравился стиль подачи материала.
6. ICeZm 12.10.20 15:36 Сейчас в теме
7. user1360744 22.04.21 10:36 Сейчас в теме
Вопрос от начинающего: Обязательно ли чтобы 1с и web-сервер были на одном компьютере?
У меня есть сайт(на Апаче) магазин, есть серверы 1с (с белым ip и серым). Хочу чтобы информация( допустим бонусы) подтягивалась из 1С при авторизации на сайте. Вот и вопрос можно ли делать публикации web-сервиса на удалённый(не в своей сети) Апач?
8. Nikola_N 29.01.22 18:41 Сейчас в теме
9. acvatoris 30.01.22 19:53 Сейчас в теме
Для того чтобы передать несколько параметров нужно их указать в строке get запроса,
например: Ip адрес / имя_публикации / hs / корневой_каталог / шаблон/{параметр1}/{параметр2}/{параметр3} или так Ip адрес / имя_публикации / hs / корневой_каталог / шаблон/beginDate/{параметр1}/endDate/{параметр2}/typeDoc/{параметр3}
10. acvatoris 30.01.22 19:58 Сейчас в теме
Ссылка на статью в которой разбирается пример передачи нескольких параметров в get запрос https://infostart.ru/public/1303368/
11. mitry 15.06.24 21:36 Сейчас в теме
А почему у Вас имя шаблона:
get_products_barcode
А запрос Вы делаете:
localhost/my_name/hs/products/get_products/20000000583067
?
get_products_barcode <> /get_products/
IsKurtis; +1 Ответить
12. acvatoris 16.06.24 08:01 Сейчас в теме
Добрый день.
Основная цель статьи, было показать, как передавать параметры в http запрос.
Прочитав статью вы разобрались как передавать параметры или нет?
Если да, то я считаю, что статья свою цель выполнила.
Если же в процессе разбора статьи у вас возникли технические проблемы с тем, что объявляется один url, а используется другой, то, тогда могу посоветовать вам разобрать первую статью из данного цикла статей, вот ссылка https://infostart.ru/1c/articles/1293341/ .

Если же вы все-таки разобрались в данном вопросе и просто хотели указать на опечатку, то написали бы, что уважаемый автор, так и так у вас опечатка в вашей статье и вот тут вы ошиблись.

Теперь отвечу на ваш комментарий, а именно на вопрос "Почему" - потому что опечатка.
Оставьте свое сообщение