Server-Sent Events
Server-Sent Events sender tekstmeldinger fra server til klient via HTTP, for eksempel om fremdriften til en bakgrunnsjobb.
Server-Sent Events, eller SSE, sender tekstmeldinger fra server til klient over en HTTP-forbindelse. I nettleseren tilbyr EventSource grensesnittet; hendelsesstrømmen bruker text/event-stream. Forbindelsen er enveis. Kommandoer fra klient til server trenger en annen vei, for eksempel vanlige HTTP-forespørsler.
En melding om en pågående rapportjobb
En fiktiv portal mottar denne hendelsesblokken:
id: evt-12
event: job-status
data: {"jobId":"J-52","status":"running"}
Den tomme linjen avslutter blokken. Hendelses-ID, hendelsestype og data har ulike roller. Her melder serveren at opprettelsen pågår; meldingen betyr ikke at filen er klar. Feltverdiene er vårt eget eksempel.
Ved et midlertidig forbindelsesbrudd kan EventSource koble til igjen automatisk. En tidligere angitt, ikke-tom hendelses-ID rapporteres via Last-Event-ID. Serveren må selv avgjøre om og hvordan manglende meldinger tilbys på nytt. ID-en oppretter ingen lagret hendelseshistorikk.
Applikasjonen må derfor håndtere doble meldinger og historikk som ikke lenger er tilgjengelig, for eksempel ved å hente jobbens gjeldende tilstand på nytt. SSE garanterer ikke at en handling i applikasjonen utføres nøyaktig én gang. Tilgang til prosjekt og jobb må også kontrolleres ved tilkobling og levering av meldinger.
Kilder
Beslektede begreper
- MeldingskvitteringEn meldingskvittering forteller meldingsmegleren at en levering er mottatt eller behandlet etter den avtalte regelen.
- ETagEn ETag identifiserer en bestemt representasjonsversjon av en HTTP-ressurs og støtter betingede oppslag eller endringer.
- Cross-Origin Resource SharingCORS styrer nettleserens tilgang til svar fra en annen origin. Det erstatter verken API-innlogging eller kontroll av rettigheter.
- Elektronisk datautvekslingEDI overfører strukturerte forretningsdokumenter mellom systemer. Format, partnerprofil, datakoblinger og tilbakemeldinger må stemme overens.
- SanntidsbehandlingSanntidsbehandling håndterer innkommende hendelser mot et fastsatt latensmål. Hendelsestid, behandlingstid og forsinkede data trenger tydelige regler.
- BatchbehandlingBatchbehandling behandler et avgrenset sett med data eller oppgaver samlet i én kjøring.
Artikler om temaet


Ditt prosjekt med ASES
Beskriv prosjektet ditt for oss. Vi tar kontakt med en første vurdering.

