Obsługiwane protokoły
W aplikacji Restorm protokół nie jest okrojonym trybem HTTP: każdy ma własny edytor, własny sposób wykonania i własny sposób prezentacji odpowiedzi. Ten sam projekt może więc zawierać obok siebie wywołanie REST, subskrypcję MQTT i konsumenta Kafka.
Wszystkie protokoły wykonawcze wchodzą w skład edycji Community, bez żadnych ograniczeń.
Żądanie / odpowiedź
Section titled “Żądanie / odpowiedź”| Protokół | Do czego służy | Tryb serwera |
|---|---|---|
| HTTP | REST i każde wywołanie HTTP | ✔ |
| GraphQL | Zapytania, mutacje, subskrypcje | ✔ |
| gRPC | Wywołania unarne i strumieniowe, gRPC-Web, Connect | ✔ |
| SOAP | Usługi WSDL, koperty XML | ✔ |
| OData | Zestawy encji, opcje zapytań, $batch | ✔ |
| JSON-RPC | JSON-RPC 2.0, pojedynczo lub wsadowo | — |
| tRPC | Procedury query i mutation | — |
Strumienie i komunikaty
Section titled “Strumienie i komunikaty”| Protokół | Do czego służy | Tryb serwera |
|---|---|---|
| WebSocket | Surowe połączenie dwukierunkowe | ✔ |
| Socket.IO | Nazwane zdarzenia Socket.IO | ✔ |
| MQTT | IoT — tematy, QoS, retencja, testament | ✔ |
| SSE | Server-Sent Events, w trybie odbioru | — |
| STOMP | STOMP na WebSocket | — |
| AMQP | RabbitMQ — publikowanie, konsumowanie, inspekcja | — |
| Kafka | Produkowanie, konsumowanie, inspekcja partycji | — |
| Redis | Pub/Sub i polecenia | — |
Co jest wspólne dla wszystkich
Section titled “Co jest wspólne dla wszystkich”{{variables}}są rozwiązywane we wszystkich polach, także w polach specyficznych dla danego protokołu. Zob. Zmienne inline.- Historia rejestruje każde wykonanie, niezależnie od protokołu. Zob. Historia żądań.
- Fragmenty kodu są generowane dla każdego protokołu, w odpowiednich dla niego językach. Zob. Eksport kodu.
- Scenariusze potrafią sterować każdym protokołem, w tym połączeniami długotrwałymi (połączenie / wysłanie / zamknięcie). Zob. Katalog akcji.
- Zapora przechwytuje wszystkie wywołania wychodzące, niezależnie od transportu. Zob. Zapora.
Czego Restorm nie obsługuje
Section titled “Czego Restorm nie obsługuje”Dla jasności co do ograniczeń: Restorm nie wykonuje Thrift (jego import ma charakter wyłącznie dokumentacyjny), ani AMQP 1.0 (zaimplementowany jest tylko AMQP 0-9-1 / RabbitMQ), ani NATS.