23.05.2016 Сергей Репин 8390
Создание 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С:Документооборот 8 ПРОФ»
ООО «ФСК Лидер»

Отрасль:
Строительство и девелопмент

Внедренное типовое решение:
1С:Документооборот 8 ПРОФ

- Делопроизводство;
- Учет и хранение документов;
- Учет и контроль исполне...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Ална-Байк»
ИП Титов Виктор Сергеевич «Ална-Байк»

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

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

- Управление складами;
- Управление заказами поставщиков;
- Управление зак...

Внедрение системы финансового учета БИТ:Финанс
ООО «Алькор и Ко» (Л’Этуаль)

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

Внедренное типовое решение:
БИТ.Финанс

- Финансовый учет;
- Поддержка проекта внедрения МСФО;
- Регламентные рабо...

ООО ХДМ Рус
ООО ХДМ Рус

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

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

Бухгалтерский учет Банк и касса Расчеты с контрагентами Торговые операции ...

ООО "НЦКТ"
ООО "НЦКТ"

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

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Производственные операции
Автоматизация бизнес-процессов...

ООО «Иви.ру»
ООО «Иви.ру»

Отрасль:
Медиаиндустрия

Внедренное типовое решение:
1С:Управление корпоративными финансами

Подсистема казначейства
Модуль бюджетного контроля по ДДС ...

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

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

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

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

ООО "РУКАРД-АУРА"
ООО "РУКАРД-АУРА"

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

Внедренное типовое решение:
1С:Комплексная автоматизация

- Налоговый учет;...

ЗАО «Ламбумиз»
ЗАО «Ламбумиз»

Отрасль:
Производство картонной упаковки

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

- Маркетинг;
- Продажи;
- Планирование закупок;
- Закупки;
- Регламенти...

ООО «Фипар»
ООО «Фипар»

Отрасль:

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

Специалисты «Кодерлайн» внедрили «1С:ERP. Управление предприятием 2» и автома...

ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)
ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)

Отрасль:
Оптовая торговля транспортными средствами и оборудованием

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский уче...

АО "Нижегородский водоканал"
АО "Нижегородский водоканал"

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

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

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

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

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

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

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