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():
addEventListener("statechange", (event) => { })
Alternativ können Sie der Event-Handler-Eigenschaft der Schnittstelle einen Wert zuweisen:
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.
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):
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> |