Server-Sent-Ereignisse

Server-Sent-Ereignisse (Sse) ist ein Serverschub Technologie ermöglicht es einem Client, automatische Aktualisierungen von einem Server über eine HTTP -Verbindung zu erhalten, und beschreibt, wie Server die Datenübertragung zu Clients initiieren können, sobald eine erste Clientverbindung hergestellt wurde. Sie werden üblicherweise verwendet, um Nachrichtenaktualisierungen oder kontinuierliche Datenströme an einen Browser-Client zu senden und das native Cross-Browser-Streaming durch eine JavaScript-API namens EventSource zu verbessern, durch die ein Client eine bestimmte URL anfordert, um einen Ereignisstrom zu erhalten. Die EventSource -API ist als Teil von standardisiert HTML5[1] bis zum Waswg. Das Mime Typ Denn SSE ist Text/Ereignisstrom.

Geschichte

Der SSE -Mechanismus wurde zuerst von spezifiziert von Ian Hickson Im Rahmen des "Waswg Webanwendungen 1.0 "Vorschlag ab 2004.[2] Im September 2006 die Opera Webbrowser Implementierte die experimentelle Technologie in einer Funktion namens "Server-Sent-Ereignisse".[3][4]

Browserunterstützung

Alle modernen Browser unterstützen server-sent-Ereignisse: Feuerfuchs 6+,, Google Chrome 6+,, Oper 11,5+, Safari 5+,, Microsoft Edge 79+.[5]

Bibliotheken

.NETZ

  • Service -Stack EventSource -Bibliothek mit Server- und Client -Implementierungen.

ASP.NET

  • SignalR - transparente Implementierung für ASP.NET.

C

  • Schwierigkeiten Asynchronous serverseitiger SSE-Daemon, der in C geschrieben wurde (verwendet einen Thread für alle verbundenen Clients).

Erlang

  • Lasse EventSource Server -Handler für Erlangs Cowboy
  • Schrotflinte EventSource -Kunde in Erlang

gehen

  • Eventource EventSource Library für Go.
  • SSE SSE -Implementierung für Go.
  • sse SSE mit optimierter Decoder für Go
  • Gosse Serverseitige Implementierung mit Kanalkonzept und weiteren Funktionen für die Verwendung von Out-of-the-Box.

Java

  • Javalin - Leichtes Java- und Kotlin -Web -Framework
  • Jaese - serverseitige asynchrone Implementierung für Java-Servlets und vert.x
  • Akka http hat SSE -Unterstützung Seit Version 10.0.8
  • Alpakka Event Source Connector EventSource -Bibliothek für Alpakka, die die Wiederverbindung unterstützt
  • Spring WebFlux Server- und Client-Seiten-Java-Implementierung basiert auf reaktiven Streams und nicht blockierenden Servern
  • Jersey hat eine vollständige Umsetzung von JAX-RS Unterstützung für Servergesendetereignisse wie definiert in JSR-370
  • Mikronaut Der HTTP -Server unterstützt den emittierenden Servergesendetereignisse
  • Jesse - Serverseitige Bibliothek mit Benutzer-/Sitzungsverwaltung, Gruppenübertragung und Authentifizierung
  • ARMERIA hat eine server- und clientseitige asynchrone SSE
  • Play Framework Ereignisquelle für Server-Sent-Ereignisemissionen
  • SSE -Kunde SSE Client Library

Node.js

Ziel c

  • TrvSeVentSource - EventSource-Implementierung in Objective-C für iOS und macOS unter Verwendung von NsurlSession.

Perl

Php

Python

Rubin

  • Faye - Einfache Pub/Sub -Messaging für das Web.

Rost

  • Kette Ein Webserver -Framework.

Scala

Schnell

  • Eventource - EventSource -Implementierung mit NsurlSession.

Siehe auch

Verweise

  1. ^ "HTML Living Standard: 9.2 Server-Sent-Ereignisse". Waswg. 31. März 2022.
  2. ^ "Webanwendungen 1.0 Spezifikation". Waswg. 2006-09-01. Archiviert vom Original am 2006-09-01. Abgerufen 2006-09-01.{{}}: CS1 Wartung: Ungeeignete URL (Link)
  3. ^ Bersvendsen, Arve (1. September 2006). "Event -Streaming für Webbrowser". dev.opera.com.
  4. ^ Stream Updates mit Server-Sent-Ereignissen, Eric Bidelman, HTML5Rocks-Website.
  5. ^ Wann kann ich ... server-sent-DOM-Ereignisse verwenden

Externe Links