Sari la conținut

SSE (Server-Sent Events)

Server-Sent Events este un flux HTTP unidirecțional: serverul împinge, clientul ascultă. Restorm face din el un tip de cerere în sine.

Clic dreapta în arbore ▸ Adaugă ▸ Cerere SSE.

O filă SSE conectată: în dreapta, fiecare eveniment primit apare cu marcajul său temporal, cu numele său („ping”) și cu sarcina sa utilă (un număr de secvență).

CâmpRol
URLPunctul de intrare al fluxului
AnteteAntetele cererii de deschidere — aici trece autentificarea
Ultimul identificator de evenimentValoarea de amorsare a antetului Last-Event-ID, trimisă numai la prima conectare

Restorm respectă specificația EventSource: analizează câmpurile event:, data:, id: și retry: și afișează fiecare eveniment primit cu marcajul său temporal, cu numele și cu sarcina sa utilă — un clic pe un eveniment îi desfășoară conținutul complet. Identificatorul, la rândul lui, este reținut pentru reconectare.

În caz de întrerupere, reconectarea retrimite automat ultimul identificator primit în Last-Event-ID — este ceea ce permite serverului să reia de unde rămăsese.

Fluxul este doar de recepție: nu există nimic de trimis odată ce conexiunea este deschisă.

Două acțiuni: Conexiune SSE (ieșirile connected și message, o emisie pentru fiecare eveniment primit) și Închidere conexiune SSE. Vedeți Conexiuni și fluxuri.

Șablonul obișnuit: se deschide fluxul, se declanșează acțiunea de business printr-un apel HTTP, apoi se verifică printr-o aserțiune că evenimentul așteptat sosește chiar pe portul message.

Trei ținte: cURL, EventSource din browser, Python (requests în flux).