23.05.2016 Сергей Репин 8488
Создание 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С:Комплексная автоматизация

- Создание интерфейсов и наборов прав пользователей;
- Отражению временных ...

Автоматизация контроля исполнительской дисциплины на базе ПП «1С:Документооборот 8 ПРОФ»
ООО «ФСК Лидер»

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

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

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

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

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

Объемно-календарное планирование производства Автоматизация бизнес-проце...

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

Отрасль:

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

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

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

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

Внедренное типовое решение:
1С:Управление нашей фирмой 8 ПРОФ

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

Внедрение блоков в 1С:Комплексная автоматизация 8
ООО «Больцен Рус»

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

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

- Оперативный учет...

ООО "Смена"
ООО "Смена"

Отрасль:
Торговля, склад, логистика, транспорт

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

Банк и касса
Расчеты с контрагентами
Торговые операции
Взаиморасчеты с...

Филиал ГлавУпДК при МИД России фирма «Инпредкадры»
Филиал ГлавУпДК при МИД России фирма «Инпредкадры»

Отрасль:
Государственное управление

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

- Расчеты с контрагентами;
- Управленческий учет;
- Формирование отраслев...

ООО «Солви Пак»
ООО «Солви Пак»

Отрасль:
Торговля. Производство печати на рулонных материалах

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

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

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

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

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в
ИП Любо Виктория Александровна (ООО «Рекреация»)

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Осуществлены разработки:
– отчета по спецификации Заказа;
– загрузки сп...

Оптимизация производительности системы
ЗАО ИД «Комсомольская правда»

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

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

- Оптимизация производительности системы, в том числе сервера Postgre. ...

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

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

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

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