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

View in English Always switch to English

RTCError

Baseline 2026
Neu verfügbar

Seit April 2026 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.

Hinweis: Diese Funktion ist in Dedicated Web Workers verfügbar.

Das RTCError-Interface der WebRTC API beschreibt einen Fehler, der beim Umgang mit RTC-Operationen aufgetreten ist. Es basiert auf dem standardmäßigen DOMException-Interface, das allgemeine DOM-Fehler beschreibt.

DOMException RTCError

Konstruktor

RTCError()

Erstellt und gibt eine neue Instanz des RTCError-Objekts zurück.

Instanzeigenschaften

Erbt auch Eigenschaften von seinem übergeordneten Interface, DOMException.

errorDetail Schreibgeschützt

Ein String, der den WebRTC-spezifischen Fehlercode angibt, der den Typ des aufgetretenen Fehlers identifiziert.

receivedAlert Schreibgeschützt

Ein positiver Ganzzahlwert, der den schwerwiegenden DTLS-Fehler angibt, der vom Netzwerk empfangen wurde. Nur gültig, wenn der errorDetail-String dtls-failure ist. Falls null, wurde kein DTLS-Fehler empfangen.

sctpCauseCode Schreibgeschützt

Eine Ganzzahl, die den SCTP-Ursachencode angibt, der die Ursache der fehlgeschlagenen SCTP-Verhandlung beschreibt. Wird gesetzt, wenn errorDetail sctp-failure ist. null, wenn der Fehler kein SCTP-Fehler ist.

sdpLineNumber Schreibgeschützt

Eine Ganzzahl, die die Zeilennummer des SDP angibt, in der der Syntaxfehler aufgetreten ist. Wird gesetzt, wenn errorDetail sdp-syntax-error ist. null, wenn der Fehler kein SDP-Syntaxfehler ist.

sentAlert Schreibgeschützt

Eine positive Ganzzahl, die den schwerwiegenden DTLS-Fehler angibt, der von diesem Gerät gesendet wurde. Wird gesetzt, wenn errorDetail dtls-failure ist. Falls null, wurde kein DTLS-Fehler übertragen.

Hinweis: Alle RTCError-Objekte haben ihren name auf OperationError gesetzt.

Beispiele

Grundlegende Verwendung

In diesem Beispiel wird ein Handler für das RTCDataChannel-error-Ereignis eingerichtet.

js
dataChannel.addEventListener("error", (event) => {
  let error = event.error; // event.error is an RTCError

  if (error.errorDetail === "sdp-syntax-error") {
    let errLine = error.sdpLineNumber;
    let errMessage = error.message;

    let alertMessage = `A syntax error occurred interpreting line ${errLine} of the SDP: ${errMessage}`;
    showMyAlertMessage("Data Channel Error", alertMessage);
  } else {
    terminateMyConnection();
  }
});

Wenn der Fehler ein SDP-Syntaxfehler ist – wie durch die errorDetail-Eigenschaft, die auf sdp-syntax-error gesetzt ist, angezeigt – wird ein Nachrichtenstring erstellt, um die Fehlermeldung und die Zeilennummer innerhalb der SDP-Nachricht darzustellen, wo der Fehler aufgetreten ist. Diese Nachricht wird dann mit einer Funktion namens showMyAlertMessage() angezeigt, die als Platzhalter für das Ausgabemechanismus dient, das dieser Code verwenden könnte.

Jeder andere Fehler wird als terminal behandelt, wodurch eine Funktion terminateMyConnection() aufgerufen wird.

Das obige Beispiel verwendet addEventListener(), um den Handler für error-Ereignisse hinzuzufügen. Sie können auch die onerror-Ereignis-Handler-Eigenschaft des RTCDataChannel-Objekts verwenden, wie hier:

js
dataChannel.onerror = (event) => {
  let error = event.error;

  /* and so forth */
};

Spezifikationen

Spezifikation
WebRTC: Real-Time Communication in Browsers
# dom-rtcerror

Browser-Kompatibilität