Gå til indhold

Streaming-forbindelser

Disse handlinger kommer i familier på to eller tre: forbind, send, luk. Forbindelsen bliver holdt åben mellem boksene, så du kan flette andre kald ind midt i.

En forbindelseshandling har to udgange:

UdgangUdsendelse
connectedEt signal, én gang, når forbindelsen bliver oprettet
messageÉn udsendelse per modtaget besked

Den bærer et forbindelsesnavn (connectionName). Send- og luk-handlingerne udpeger derefter denne forbindelse via dens boks-id (connectionNodeId).

Det klassiske mønster:

MQTT connect ──connected──► HTTP-anmodning (udløs forretningshandlingen)
└───────message─────► Assert (den forventede besked er ankommet)
derefter ──► Luk MQTT-forbindelse
HandlingIndgangeUdgange
WebSocket-forbindelseconnected, message (enhver modtaget frame)
WebSocket sendpayload
Luk WebSocket-forbindelse
Luk WebSocket-server

Se WebSocket.

HandlingIndgangeUdgange
Socket.IO-forbindelseconnected, én event:<name>-port per angivet hændelse, og others
Socket.IO sendchannel, payload
Luk Socket.IO-forbindelse
Luk Socket.IO-server

Det er den eneste forbindelseshandling, hvis udgange kan konfigureres: angiv listen over de hændelser, du er interesseret i, og hver af dem får sin egen port. Enhver hændelse, der ikke er angivet, kommer ind på others.

Se Socket.IO.

HandlingIndgangeUdgange
MQTT connectconnected, message
MQTT publishpayload
Luk MQTT-forbindelse

Forbindelsen abonnerer på anmodningens emne; afsendelsen udgiver med den konfigurerede QoS og retain-indstilling. Se MQTT.

HandlingIndgangeUdgange
SSE-forbindelseconnected, message
Luk SSE-forbindelse

Kun modtagelse: der er ingen send-handling. Se SSE.

HandlingIndgangeUdgange
STOMP-forbindelseconnected, message
STOMP-afsendelsepayload
Luk STOMP-forbindelse

Forbindelsen sender CONNECT og derefter et SUBSCRIBE per konfigureret abonnement; afsendelsen giver en SEND-frame; lukningen et DISCONNECT. Se STOMP.

HandlingIndgangeUdgange
AMQP-forbindelseconnected, message
AMQP-udgivelsepayload
Luk AMQP-forbindelse

Forbindelsen forbruger anmodningens kø (tilstanden subscribe); udgivelsen bruger dens exchange og routing key. Se AMQP.

HandlingIndgangeUdgange
Redis subscribeconnected, message
Luk Redis-forbindelse

Til en enkeltstående kommando er det Redis command, som er en anmodning/svar-handling — se Anmodninger.

HandlingIndgangeUdgange
Kafka consumeconnected, message
Luk Kafka-forbindelse

Forbruget abonnerer via anmodningens forbrugergruppe. Til at producere er det Kafka produce, en enkeltstående handling. Se Kafka.

HandlingIndgangeUdgange
gRPC connectconnected, message
gRPC sendpayload
Luk gRPC-forbindelse

Til tilstandene server-stream, client-stream og bidirectional-stream: afsendelsen giver kun mening for de to sidste, og lukningen udfører halvlukningen på klientsiden. Et unary-kald foretager du med HTTP-anmodning. Se gRPC.

HandlingIndgangeUdgange
GraphQL-abonnementconnected, message
Opsig GraphQL-abonnement

Se GraphQL.