23.05.2016 Сергей Репин 8493
Создание 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С:Управление холдингом

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- ...

ООО «ТейблТок»
ООО «ТейблТок»

Отрасль:
Общественное питание и рестораны

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

Оформление заказов поставщикам Оформление заказов покупателей Управление ...

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

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

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

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

Апгрейд 1С:Бухгалтерия 8 ПРОФ (USB) до версии 1С:Бухгалтерия 8 КОРП (USB)
ООО «Ява Строй»

Отрасль:
Строительство

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

- Создание чистых конфигураций. Внесение изменений в БД ЗУП и новая расчетна...

ООО «ДАФ Тракс Рус» (DAF Trucks Rus)
ООО «ДАФ Тракс Рус» (DAF Trucks Rus)

Отрасль:
Машиностроение

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

- Осуществлена разработка матрицы прав и ролей для финансового подразделени...

ООО «ПКП КАБЭЛЕКТРОСНАБ»
ООО «ПКП КАБЭЛЕКТРОСНАБ»

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

Внедренное типовое решение:
1С:Управление небольшой фирмой 1.6

- Оформление заказов покупателей;
- Управление складскими запасами;
- Ана...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:

- Совместная работа по внедрению разных решений, в том числе «1С:ERP Управление...

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

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

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

- Оформление заказов поставщикам;
- Управление отношениями с поставщиками;...

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

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

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

- Отказ от бумажного документооборота, от громоздких систем на базе офисного...

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

Отрасль:

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

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

ООО «Вистеон Автоприбор Электроникс»
ООО «Вистеон Автоприбор Электроникс»

Отрасль:

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

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

ООО «ЛИГА-ТРАНС»
ООО «ЛИГА-ТРАНС»

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

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

- Сделано ТЗ по автоматизации учета МСФО: - Разработана карта бюджета доходо...

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

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

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

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