Перейти до вмісту

Підтримувані протоколи

У Restorm протокол — це не спрощений різновид HTTP: кожен має власний редактор, власне виконання та власне подання відповіді. Тож один проєкт може містити виклик REST, підписку MQTT і споживача Kafka поруч.

Усі протоколи виконання входять до видання Community, без обмежень.

ПротоколДля чогоРежим сервера
HTTPREST і будь-який виклик HTTP✔
GraphQLЗапити, мутації, підписки✔
gRPCУнарні та потокові виклики, gRPC-Web, Connect✔
SOAPСлужби WSDL, конверти XML✔
ODataНабори сутностей, параметри запиту, $batch✔
JSON-RPCJSON-RPC 2.0, одиничний або пакетний—
tRPCПроцедури query і mutation—

Потоки та обмін повідомленнями

Section titled “Потоки та обмін повідомленнями”
ПротоколДля чогоРежим сервера
WebSocketСире двоспрямоване з’єднання✔
Socket.IOІменовані події Socket.IO✔
MQTTIoT — теми, QoS, утримання, заповіт✔
SSEServer-Sent Events, на приймання—
STOMPSTOMP поверх WebSocket—
AMQPRabbitMQ — публікація, споживання, огляд—
KafkaВиробництво, споживання, огляд партиції—
RedisPub/Sub і команди—
  • {{variables}} обчислюються в усіх полях, зокрема й у тих, що властиві протоколу. Див. Вбудовані змінні.
  • Історія записує кожне виконання, хоч би яким був протокол. Див. Історія запитів.
  • Фрагменти коду генеруються для кожного протоколу відповідними мовами. Див. Експорт коду.
  • Сценарії вміють керувати кожним протоколом, зокрема довготривалими з’єднаннями (підключити / надіслати / закрити). Див. Каталог дій.
  • Брандмауер перехоплює всі вихідні виклики, хоч би яким був транспорт. Див. Брандмауер.

Щоб чітко окреслити межі: Restorm не виконує Thrift (його імпорт має суто документаційний характер), AMQP 1.0 (реалізовано лише AMQP 0-9-1 / RabbitMQ) і NATS.