Files
cc-1c-skills/.augment/skills/meta-compile/reference/web.md
T
2026-07-12 11:42:37 +00:00

2.9 KiB

HTTPService, WebService (Веб-сервисы)

Модуль обоих — Ext/Module.bsl, в нём реализуются обработчики.

HTTPService (HTTP-сервис)

Ключ Умолчание Значения
rootURL = name (в нижнем регистре) корневой URL
reuseSessions DontUse DontUse / AutoUse
sessionMaxAge 20 время жизни сессии, сек
urlTemplates {} шаблоны URL (см. ниже)

urlTemplates — объект { "ИмяШаблона": def }, где def:

  • строка — URL-путь без методов: "/health";
  • объект: template (путь с параметрами {id}, по умолчанию /имяшаблона), methods{ "ИмяМетода": "HTTPMethod" }.

HTTP-методы: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, CONNECT, TRACE, MERGE. Обработчик метода в модуле именуется {ИмяШаблона}{ИмяМетода}.

{ "type": "HTTPService", "name": "API", "rootURL": "api",
  "urlTemplates": {
    "Users": { "template": "/v1/users/{id}", "methods": { "Get": "GET", "Create": "POST", "Delete": "DELETE" } },
    "Health": "/health"
  } }

WebService (Веб-сервис, SOAP)

Ключ Умолчание Значения
namespace пусто URI пространства имён WSDL
xdtoPackages пусто XDTO-пакеты
reuseSessions DontUse DontUse / AutoUse
sessionMaxAge 20 время жизни сессии, сек
operations {} операции (см. ниже)

operations — объект { "ИмяОперации": def }, где def:

  • строка — XDTO-тип возврата без параметров: "xs:string";
  • объект: returnType (по умолчанию xs:string), nillable (bool), transactioned (bool), handler (имя процедуры, по умолчанию = имя операции), parameters.

parameters — объект { "ИмяПараметра": def }, где def:

  • строка — XDTO-тип (direction = In);
  • объект: type (по умолчанию xs:string), nillable (bool, по умолчанию true), direction (In / Out / InOut).

XDTO-типы: xs:string, xs:boolean, xs:int, xs:long, xs:decimal, xs:dateTime, xs:base64Binary.

{ "type": "WebService", "name": "DataExchange", "namespace": "http://www.1c.ru/DataExchange",
  "operations": {
    "TestConnection": { "returnType": "xs:boolean", "handler": "ПроверкаПодключения",
                        "parameters": { "ErrorMessage": { "type": "xs:string", "direction": "Out" } } },
    "GetVersion": "xs:string"
  } }