mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-13 22:35:16 +03:00
2.9 KiB
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"
} }