Skip to main content

Http-сервисы

Механизм для предоставления данных через HTTP протокол. Современная альтернатива веб-сервисам.

Ключевые свойства

ПонятиеОписаниеОсобенность в 1С
REST архитектураРабота с ресурсами через HTTP методыGET/POST/PUT/DELETE
JSON поддержкаОсновной формат обменаАвтоматическая сериализация
ПростотаМинимальная настройкаБез WSDL, XSD
ПроизводительностьМеньший объем передаваемых данныхОсобенно с JSON

Разница HTTP vs WEB

АспектHTTP-сервисы (REST)Web-сервисы (SOAP)
АрхитектураОриентированы на ресурсы (/orders/{id})Ориентированы на действия (СоздатьЗаказ())
ДанныеПреимущественно JSON, любой форматТолько XML
Объем данныхМеньше (особенно с JSON)Больше (XML overhead + Base64)
ТипизацияДинамическая, гибкаяСтрогая, через XSD
ИспользованиеОбмен данными, мобильные приложенияВыполнение операций, 1С-1С интеграция

REST API

Это набор правил и стандартный «язык», чтобы приложения могли просто и надежно обмениваться данными через интернет, когда серверное приложение дает доступ к своим данным клиентскому приложению по определенному URL.

Всё считается ресурсами (пользователи, товары, статьи), к которым обращаются по уникальному URL-адресу (например, api/v1/orders).

Ключевые принципы REST в 1С:

GET    /api/v1/orders     → Получить список заказов
POST /api/v1/orders → Создать новый заказ
GET /api/v1/orders/123 → Получить заказ 123
PUT /api/v1/orders/123 → Обновить заказ 123
DELETE /api/v1/orders/123 → Удалить заказ 123

Критические нюансы

Преимущества:

  1. JSON как основной формат — легче, чем XML
  2. Прямая передача бинарных данных — без Base64
  3. Простая отладка — через браузер, Postman

Ограничения:

  1. Нет строгого контракта — как WSDL
  2. Меньше встроенной валидации — нужно писать свою
  3. Требует знания HTTP — статусы, заголовки, методы

Когда выбирать

Идеальные кейсы:

  1. Мобильные приложения — JSON + REST = стандарт
  2. Микросервисная архитектура — легкие HTTP-вызовы
  3. Публичные API — для партнеров, клиентов

Авторизация

Процесс проверки прав доступа к HTTP-сервису. Определяет, кто и какие операции может выполнять.

Основные методы авторизации:

МетодКак работаетПреимуществаНедостатки
Basic AuthЛогин/пароль в заголовке Authorization: Basic base64(login:password)Простота реализации, поддержка вездеПароль в каждом запросе, нужен HTTPS
API KeyКлюч в заголовке или параметре X-API-Key: your-keyПросто для клиента, легко отозватьКлюч в каждом запросе, может попасть в логи
Bearer Token (JWT)Токен в заголовке Authorization: Bearer <token>Stateless, содержит данные, проверка подписиСложнее реализации, управление сроком жизни
OAuth 2.0Получение access token через authorization serverСтандарт де-факто, безопасность, делегирование правСложная настройка, overhead для простых случаев

Выбор метода для разных сценариев:

СценарийРекомендуемый методПочему
Внутренняя интеграция (1С ↔ 1С)Basic Auth или API KeyПростота, обе системы под контролем
Публичное REST APIJWT или OAuth 2.0Стандарт для REST, безопасность, масштабируемость