HTTP-сервисы в 1С позволяют создать REST API для интеграции с внешними системами. Рассмотрим, как создать простой API для получения данных из 1С.
Что такое HTTP-сервис
HTTP-сервис — это объект конфигурации 1С, который позволяет принимать HTTP-запросы и возвращать ответы. По сути, это способ создать API для вашей базы 1С.
Создание HTTP-сервиса
- Откройте конфигуратор
- Добавьте новый объект: Общие → HTTP-сервисы → Добавить
- Задайте имя (например, «API»)
- Укажите корневой URL (например, «/api»)
- Добавьте шаблон URL и метод
Пример: API для получения товаров
// Модуль HTTP-сервиса
Функция ПолучитьТовары(Запрос)
Запрос1С = Новый Запрос;
Запрос1С.Текст = "ВЫБРАТЬ
| Товары.Код,
| Товары.Наименование,
| Товары.Цена
|ИЗ
| Справочник.Товары КАК Товары";
Результат = Запрос1С.Выполнить().Выгрузить();
МассивТоваров = Новый Массив;
Для Каждого Строка Из Результат Цикл
Товар = Новый Структура;
Товар.Вставить("code", Строка.Код);
Товар.Вставить("name", Строка.Наименование);
Товар.Вставить("price", Строка.Цена);
МассивТоваров.Добавить(Товар);
КонецЦикла;
Ответ = Новый HTTPСервисОтвет(200);
Ответ.Заголовки.Вставить("Content-Type", "application/json");
Ответ.УстановитьТелоИзСтроки(JSON.Записать(МассивТоваров));
Возврат Ответ;
КонецФункции
Публикация сервиса
- Администрирование → Публикация на веб-сервере
- Выберите веб-сервер (IIS или Apache)
- Отметьте HTTP-сервисы для публикации
- Нажмите «Опубликовать»
URL для доступа
После публикации API будет доступен по адресу:
http://сервер/база/hs/api/товары
Авторизация
Для защиты API используйте:
- Basic Auth — логин и пароль пользователя 1С
- API-ключ — передача токена в заголовке
- OAuth — для сложных сценариев
Рекомендации
- Используйте понятные URL (GET /api/products, POST /api/orders)
- Возвращайте корректные HTTP-коды (200, 404, 500)
- Логируйте все запросы для отладки
- Ограничивайте количество записей в выборках
Нужна помощь с API?
Разработаю REST API для вашей 1С под любые задачи интеграции.
Обсудить в Telegram