有些操作在出现错误时抛出 RTCError,其定义如下面的代码清单所示。
interface RTCError : DOMException {
constructor(RTCErrorInit init, optional DOMString message = "");
readonly attribute RTCErrorDetailType errorDetail;
readonly attribute long? sdpLineNumber;
readonly attribute long? sctpCauseCode;
readonly attribute unsigned long? receivedAlert;
readonly attribute unsigned long? sentAlert;
};
RTCError 属性说明 | |
属性 | 说明 |
errorDetail | WebRTC 指定的错误代码,类型为 RTCErrorDetailType |
sdpLineNumber | 当 errorDetail 为 sdp-syntax-error 时,sdpLineNumber 是出现错误的行号 |
sctpCauseCode | 当 errorDetail 为 sctp-failure 时,sctpCauseCode 是导致 SCTP 协商失败的代码 |
receivedAlert | 当 errorDetail 为 dtls-failure 时,receivedAlert 是收到的 DTLS 错误警告 |
sentAlert | 当 errorDetail 为 dtls-faiure 时,sentAlert 是发送的 DTLS 错误警告 |
//RTCErrorDetailType枚举取值
enum RTCErrorDetailType {
"data-channel-failure",
"dtls-failure",
"fingerprint-failure",
"sctp-failure",
"sdp-syntax-error",
"hardware-encoder-not-available",
"hardware-encoder-error"
};
RTCErrorDetailType 枚举值说明 | |
枚举值 | 说明 |
data-channel-failure | 数据通道错误 |
dtls-failure | DTLS 协商失败 |
fngerprint-failure | RTCDtlsTransport 的对等端证书与 SDP 中的指纹不匹配 |
sctp-failure | SCTP 协商失败 |
sdp-syntax-error | SDP 语法错误 |
hardware-encoder-not-available | 请求硬件编码资源失败 |
hardware-encoder-error | 硬件编码不支持指定参数 |