RTCIceCandidate: protocol-Eigenschaft
Die schreibgeschützte protocol
-Eigenschaft des RTCIceCandidate
-Interfaces ist ein String, der angibt, ob der Kandidat UDP oder TCP als Transportprotokoll verwendet.
Der Wert des protocol
-Feldes wird aus dem candidateInfo
-Optionsobjekt gesetzt, das dem RTCIceCandidate()
-Konstruktor übergeben wird. Sie können den Wert von protocol
nicht direkt im Optionsobjekt angeben, aber sein Wert wird automatisch aus der candidate
-a-Zeile des Objekts extrahiert, wenn sie richtig formatiert ist.
protocol
ist standardmäßig null
, wenn es nicht richtig im SDP angegeben ist, was jedoch ein Fehlerzustand ist und zu einer Ausnahme führt, wenn Sie RTCPeerConnection.addIceCandidate()
aufrufen.
Wert
Ein String, der angibt, welches Netzwerkprotokoll der Kandidat verwendet:
tcp
-
Der Kandidat würde, falls ausgewählt, TCP als Transportprotokoll für seine Daten verwenden. Die Eigenschaft
tcpType
liefert zusätzliche Informationen über die Art des durch das Objekt dargestellten TCP-Kandidaten. udp
-
Der Kandidat verwendet das UDP-Transportprotokoll für seine Daten. Dies ist das bevorzugte Protokoll für Medieninteraktionen aufgrund seines besseren Leistungsprofils.
Hinweis:
Wenn protocol
null
ist — und protocol
vom user agent unterstützt wird — wird das Übergeben des Kandidaten an addIceCandidate()
fehlschlagen und eine OperationError
-Ausnahme auslösen.
Verwendungshinweise
Hier ist ein Beispiel für eine Kandidat-a-Zeile aus einer ICE-Transaktion:
a=candidate:4234997325 1 udp 2043278322 192.0.2.172 44323 typ host
Das dritte Feld, "udp"
, ist der Protokolltyp und zeigt an, dass der Kandidat das UDP-Transportprotokoll verwenden würde.
Beispiele
Dieser Codeausschnitt untersucht den Wert von protocol
, um zu entscheiden, ob er den Wert von tcpType
betrachten soll, um zu sehen, ob es sich um einen simultaneous-open (S-O)-Kandidaten handelt.
if (candidate.protocol === "tcp") {
if (candidate.tcpType === "so") {
adjustForSimultaneousOpen(candidate);
}
}
Spezifikationen
Specification |
---|
WebRTC: Real-Time Communication in Browsers # dom-rtcicecandidate-protocol |
Browser-Kompatibilität
BCD tables only load in the browser