Przejdź do głównej zawartości

Socket.IO

Socket.IO jest dostępny po wybraniu protokołu socketio w żądaniu WebSocket.

W odróżnieniu od surowego protokołu WebSocket Socket.IO przenosi nazwane zdarzenia: to nazwa zdarzenia odróżnia jedną wiadomość od drugiej, a nie jej treść.

Zakładka Socket.IO: adres URL serwera, nazwa zdarzenia „pet”, ładunek JSON do wyemitowania oraz nagłówki handshake'u

PoleRola
URLAdres URL serwera Socket.IO
ZdarzenieNazwa emitowanego zdarzenia
WiadomośćŁadunek zdarzenia
NagłówkiNagłówki handshake’u

Akcja Połączenie Socket.IO jest jedyną, której wyjścia można konfigurować: wystarczy zadeklarować listę interesujących zdarzeń, a węzeł udostępni wówczas jeden port na każde zdarzenie, a ponadto:

  • connected — sygnał emitowany w chwili nawiązania połączenia;
  • others — port domyślny, który odbiera każde niezadeklarowane zdarzenie.

Pozwala to czysto rozdzielić przepływ: commande:acceptée w jedną stronę, commande:refusée w drugą, bez pisania jakiegokolwiek warunku.

Cykl życia dopełniają akcje Wysyłanie Socket.IO (z kanałem i ładunkiem) oraz Zamknięcie połączenia Socket.IO. Zob. Połączenia i strumienie.

Restorm potrafi hostować serwer Socket.IO, który współdzieli swoje gniazdo z pozostałymi serwerami na tym samym porcie. Zob. Symulowanie WebSocket, Socket.IO i MQTT.