RTCDataChannel: binaryType-Eigenschaft
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Die Eigenschaft binaryType
auf der
RTCDataChannel
-Schnittstelle ist ein String, der den Typ des Objekts angibt, das verwendet werden soll, um binäre Daten, die über den RTCDataChannel
empfangen werden, darzustellen. Werte, die durch die WebSocket.binaryType
-Eigenschaft erlaubt sind, sind auch hier zulässig: blob
, wenn Blob
-Objekte verwendet werden, oder arraybuffer
, wenn ArrayBuffer
-Objekte verwendet werden. Der Standardwert ist blob
.
Wenn eine binäre Nachricht über den Datenkanal empfangen wird, ist die resultierende message
-Eigenschaft des MessageEvent.data
-Ereignisses ein Objekt des durch binaryType
angegebenen Typs.
Wert
Ein String, der einen dieser Werte haben kann:
"blob"
-
Die Inhalte empfangener binärer Nachrichten werden in
Blob
-Objekten enthalten sein. "arraybuffer"
-
Die Inhalte empfangener binärer Nachrichten werden in
ArrayBuffer
-Objekten enthalten sein.
Beispiel
Dieser Code konfiguriert einen Datenkanal, um binäre Daten in ArrayBuffer
-Objekten zu empfangen, und richtet einen Listener für message
-Ereignisse ein, der einen String konstruiert, der die empfangenen Daten als Liste von hexadezimalen Byte-Werten darstellt.
const dc = peerConnection.createDataChannel("Binary");
dc.binaryType = "arraybuffer";
dc.onmessage = (event) => {
const byteArray = new Uint8Array(event.data);
let hexString = "";
byteArray.forEach((byte) => {
hexString += `${byte.toString(16)} `;
});
};
Spezifikationen
Specification |
---|
WebRTC: Real-Time Communication in Browsers # dom-datachannel-binarytype |
Browser-Kompatibilität
BCD tables only load in the browser