Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

RTCDtlsTransport: statechange-Ereignis

Baseline
Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit März 2022 browserübergreifend verfügbar.

Ein statechange-Ereignis tritt auf, wenn sich der Zustand eines RTCDtlsTransport ändert. Mit der Eigenschaft state können Sie den aktuellen Zustand des zugrunde liegenden Datagram Transport Layer Security (DTLS)-Transports ermitteln.

Dieses Ereignis kann nicht abgebrochen werden und wird nicht nach oben weitergeleitet.

Syntax

Verwenden Sie den Ereignisnamen in addEventListener():

js
addEventListener("statechange", (event) => { })

Alternativ können Sie der Event-Handler-Eigenschaft der Schnittstelle einen Wert zuweisen:

js
onstatechange = (event) => { }

Ereignistyp

Ein generisches Event.

Beispiele

Für eine RTCPeerConnection namens pc erstellt der folgende Code einen Event-Handler, der eine Funktion namens handleFailure() aufruft, wenn der DTLS-Transport in einen Fehlerzustand übergeht.

js
const dtlsTransport = pc.getSenders()[0].transport;

dtlsTransport.addEventListener("statechange", (ev) => {
  if (dtlsTransport.state === "failed") {
    handleFailure(pc);
  }
});

Derselbe Code sieht mit der Event-Handler-Eigenschaft onstatechange so aus (beachten Sie jedoch, dass dadurch gegebenenfalls andere über onstatechange hinzugefügte Event-Listener ersetzt werden):

js
const dtlsTransport = pc.getSenders()[0].transport;

dtlsTransport.onstatechange = (ev) => {
  if (dtlsTransport.state === "failed") {
    handleFailure(pc);
  }
};

Spezifikationen

Spezifikation
WebRTC: Real-Time Communication in Browsers
# dom-rtcdtlstransport-onstatechange

Browser-Kompatibilität

Siehe auch