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: Error-Ereignis

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Ein RTCDtlsTransport empfängt ein error-Ereignis, wenn ein Fehler auf Transportebene in der RTCPeerConnection auftritt.

Dieses Ereignis ist nicht abbruchfähig und wird nicht weitergeleitet.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener(), oder legen Sie eine Event-Handler-Eigenschaft fest.

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

onerror = (event) => { }

Ereignistyp

Ein RTCErrorEvent. Erbt von Event.

Event RTCErrorEvent

Beschreibung

Fehler auf Transportebene haben einen der folgenden Werte für die angegebene RTCError-Eigenschaft errorDetail:

dtls-failure

Die Aushandlung der DTLS-Verbindung ist fehlgeschlagen oder die Verbindung wurde mit einem schweren Fehler beendet. Die message-Eigenschaft des Fehlers enthält Details zur Art des Fehlers. Wenn ein schwerwiegender Fehler empfangen wird, ist die receivedAlert-Eigenschaft des Fehlerobjekts auf den Wert des empfangenen DTLS-Alerts gesetzt. Wenn hingegen ein fataler Fehler gesendet wurde, ist die sentAlert-Eigenschaft auf den Wert des gesendeten Alerts gesetzt.

fingerprint-failure

Das Remote-Zertifikat für das RTCDtlsTransport stimmt mit keinem der in der SDP angegebenen Fingerabdrücke überein. Wenn das Remote-Peer das lokale Zertifikat nicht mit den bereitgestellten Fingerabdrücken abgleichen kann, tritt dieser Fehler nicht auf, obwohl diese Situation stattdessen zu einem dtls-failure-Fehler führen kann.

Beispiele

Grundlegende Nutzung

Angenommen, wir haben eine RTCPeerConnection, pc, behandelt der folgende Code einen DTLS-Transportfehler:

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

dtlsTransport.addEventListener("error", (ev) => {
  const err = ev.error;
  // …
});

Der gleiche Code, unter Verwendung der onerror-Event-Handler-Eigenschaft, sieht so aus:

js
dtlsTransport.onerror = (ev) => {
  const err = ev.error;
  // …
};

Hinweis: Da RTCError nicht zu den Legacy-Fehlern gehört, ist der Wert von code immer 0.

Spezifikationen

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

Browser-Kompatibilität

Siehe auch