23.05.2016 Сергей Репин 8342
Создание HTTP-сервиса
  Дополнение к статье “HOWTO: создание и отладка HTTP-сервиса в 1С:Предприятие
 
     
 

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

Выглядеть он должен следующим образом: http://localhost/base/hs/info?action=getusers

Возвращать должен строку JSON (массив объектов JSONсо свойствами: имя пользователя, id пользователя): 
 
     
 
[

{

"name": "Администратор",

"id": "563e7509-83bb-11e5-80c3-00505601174a"

},

{

"name": "Гость",

"id": "423a9d3d-88fc-11e5-80c3-00505601174a"

}

]
 
     
  Чтобы это реализовать, создадим в конфигурации (или в расширении) объект HTTP-сервис, для простоты назовем его «Инфо». Корневой URL должен быть равен «info».  
     
  Далее добавим к нему шаблон URL, для простоты назовем его «Основной». Значение шаблона должно быть равно«/*».   
     
  К шаблону мы добавим метод GET: имя = «GET», HTTP-метод = «GET».   
     
     
 
Примечание. Имя метода рекомендуется назначать по имени HTTP-метода.  
 
     
  Создадим обработчик HTTP-метода GET.   
     
     
  По умолчанию процедура обработчика метода заполнена кодом, возвращающим стандартный успешный HTTPответ (код 200).   
     
 
Функция ОсновнойGET(Запрос)

            Ответ = Новый HTTPСервисОтвет(200);

            Возврат Ответ;


КонецФункции
 
     
 

Скорректируем его так, чтобы он возвращал нам список пользователей.

 
     
 
Функция ОсновнойGET(Запрос)

            Ответ = Новый HTTPСервисОтвет(200);

            Если НРЕГ(Запрос.ПараметрыЗапроса.Получить("action")) = "getusers" Тогда

                        Ответ.УстановитьТелоИзСтроки(ВернутьСписокПользователей());

            КонецЕсли;

            Возврат Ответ;

КонецФункции

Функция ВернутьСписокПользователей()

           

            Запрос = Новый Запрос;

            Запрос.Текст =

            "ВЫБРАТЬ

            |          Пользователи.Ссылка

            |ИЗ

            |          Справочник.Пользователи КАК Пользователи

            |ГДЕ

            |          Пользователи.Недействителен = ЛОЖЬ";

           

            Выборка = Запрос.Выполнить().Выбрать();

           

            ОтветМассив = Новый Массив;

            Пока Выборка.Следующий() Цикл

                        ОтветМассив.Добавить(Новый Структура("name,id",Выборка.Ссылка.Наименование,""+Выборка.Ссылка.УникальныйИдентификатор()));

            КонецЦикла;

           

            Ответ = Новый ЗаписьJSON;

            Ответ.УстановитьСтроку();

            ЗаписатьJSON(Ответ,ОтветМассив); // сериализуетОтветМассив в формат JSON

            Возврат Ответ.Закрыть();

                

КонецФункции
 
     
  Проверяем результат:
 
     
     
  Если есть вопросы по созданию и отладке HTTP-сервиса в «1С:Предприятие» – обращайтесь!   
     
 

    Сергей Репин,
    разработчик ООО «Кодерлайн»

 

Наши проекты

ООО "Эскорт-Центр"
ООО "Эскорт-Центр"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Сквозной учет затрат по объектам
- Бухгалтерский учет
- Расчет зарплаты...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
«1С: Управление торговлей»

- Создание прототипа SRM-системы на базе «1С: Управление торговлей»
- Автомат...

ХИТЕК-ГРУП
ХИТЕК-ГРУП

Отрасль:
Продажа парикмахерского инструмента и аксессуаров

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Документооборот (ECM)
• Делопроизводство
Управление бизнес-процессами и И...

Автоматизация кадрового учета на базе ПП "1С:Зарплата и управление персоналом" в ТД НМК
ООО «Торговый дом Нальчикский молочный комбинат»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Кадровый учет;
- Расчет зарплаты;
- Регламентированная отчетность;
- А...

ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"
ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"

Отрасль:
Деятельность больничных организаций

Внедренное типовое решение:
БИТ:Управление медицинским центром 8

- Управление отношениями с клиентами (CRM)
- Делопроизводство
- Ведение но...

ОАО «Фаберлик»
ОАО «Фаберлик»

Отрасль:

Внедренное типовое решение:
1С:ERP. Управление производственным предприятием 2

- Регламентированный учет;
- Кадровый учет;...

Фирма 1С
Фирма 1С

Отрасль:

Внедренное типовое решение:
1С:Документооборот

- Подготовка функциональной модели прикладного решения «1С:Документооборот...

ООО «Аэроэкспресс»
ООО «Аэроэкспресс»

Отрасль:

Внедренное типовое решение:
1С:ERP. Управление холдингом

· Планирование закупок · Управление закупочными процедурами, включая 223 ФЗ ...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

МГК "Световые Технологии"
МГК "Световые Технологии"

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты "Кодерлайн" произвели доработки в системе 1С:ЕРП 2.4 с учетом треб...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

Внедренное типовое решение:
Платформа 1С:Предприятие 8

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в дан...

Доработка конфигурации Заказчика «1С:Управление строительной организацией»
ЗАО «Стройтрансгаз»

Отрасль:
Проектирование

Внедренное типовое решение:
1С:Управление строительной организацией

Взаиморасчеты с поставщиками;
- Оформление заказов поставщикам;
- Склад ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение