Beschreibung
Verwenden Sie die chrome.socket
API, um mithilfe von TCP- und UDP-Verbindungen Daten über das Netzwerk zu senden und zu empfangen. Hinweis:Ab Chrome 33 wird diese API zugunsten der sockets.udp
, sockets.tcp
und sockets.tcpServer
API eingestellt.
Berechtigungen
socket
Typen
AcceptInfo
Attribute
-
resultCode
Zahl
-
socketId
Zahl optional
Die ID des akzeptierten Sockets.
CreateInfo
Attribute
-
socketId
Zahl
Die ID des neu erstellten Sockets.
CreateOptions
NetworkInterface
Attribute
-
Adresse
String
Die verfügbare IPv4/6-Adresse.
-
Name
String
Der zugrunde liegende Name des Adapters. Bei *nix ist dies in der Regel „eth0“, „lo“ usw.
-
prefixLength
Zahl
Präfixlänge
ReadInfo
Attribute
-
Daten
ArrayBuffer
-
resultCode
Zahl
Der vom zugrunde liegende read()-Aufruf zurückgegebene resultCode.
RecvFromInfo
Attribute
-
Adresse
String
Die Adresse des Remote-Computers.
-
Daten
ArrayBuffer
-
Port
Zahl
-
resultCode
Zahl
Der vom zugrunde liegende recvfrom()-Aufruf zurückgegebene resultCode.
SecureOptions
Attribute
-
tlsVersion
TLSVersionConstraints optional
SocketInfo
Attribute
-
verbunden
boolean
Gibt an, ob der zugrunde liegende Socket verbunden ist oder nicht.
Bei
tcp
-Sockets bleibt dies „true“, auch wenn der Remote-Peer getrennt wurde. Lesen oder Schreiben in den Socket kann dann zu einem Fehler führen, der darauf hinweist, dass dieser Socket überdisconnect()
getrennt werden sollte.Für
udp
-Sockets stellt dies lediglich dar, ob eine Standard-Remote-Adresse zum Lesen und Schreiben von Paketen angegeben wurde. -
localAddress
String optional
Wenn der zugrunde liegende Socket gebunden oder verbunden ist, enthält er seine lokale IPv4/6-Adresse.
-
localPort
Zahl optional
Wenn der zugrunde liegende Socket gebunden oder verbunden ist, enthält er seinen lokalen Port.
-
peerAddress
String optional
Enthält die IPv4/6-Adresse des Peers, wenn der zugrunde liegende Socket verbunden ist.
-
peerPort
Zahl optional
Wenn der zugrunde liegende Socket verbunden ist, enthält er den Port des verbundenen Peers.
-
socketType
Der Typ des übergebenen Sockets. Dies ist
tcp
oderudp
.
SocketType
Enum
„tcp“
"udp"
TLSVersionConstraints
Attribute
-
max
String optional
-
Min.
String optional
Die Mindest- und Höchstversion der zulässigen TLS-Versionen. Unterstützte Werte sind
tls1.2
odertls1.3
.Die Werte
tls1
undtls1.1
werden nicht mehr unterstützt. Wennmin
auf einen dieser Werte gesetzt ist, wird es automatisch antls1.2
angepasst. Wennmax
auf einen dieser Werte oder einen anderen nicht erkannten Wert festgelegt ist, wird er ignoriert.
WriteInfo
Attribute
-
bytesWritten
Zahl
Die Anzahl der gesendeten Byte oder ein negativer Fehlercode.
Methoden
accept()
chrome.socket.accept(
socketId: number,
callback: function,
)
Diese Methode gilt nur für TCP-Sockets. Registriert eine Callback-Funktion, die aufgerufen werden soll, wenn eine Verbindung auf diesem wartenden Server-Socket akzeptiert wird. Zuerst muss der Zuhörvorgang aufgerufen werden. Wenn bereits ein aktiver Annahme-Callback vorhanden ist, wird dieser Callback mit einem Fehler als resultCode sofort aufgerufen.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(acceptInfo: AcceptInfo) => void
-
acceptInfo
-
bind()
chrome.socket.bind(
socketId: number,
address: string,
port: number,
callback: function,
)
Bindet die lokale Adresse für den Socket. TCP-Socket wird derzeit nicht unterstützt.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Adresse
String
Die Adresse des lokalen Computers.
-
Port
Zahl
Der Port des lokalen Computers.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
connect()
chrome.socket.connect(
socketId: number,
hostname: string,
port: number,
callback: function,
)
Verbindet das Socket mit dem Remote-Computer (für einen tcp
-Sockel). Hiermit wird für einen udp
-Socket die Standardadresse festgelegt, an die Pakete für read()
- und write()
-Aufrufe gesendet und von ihr gelesen werden.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Hostname
String
Der Hostname oder die IP-Adresse des Remote-Computers.
-
Port
Zahl
Der Port des Remote-Computers.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
create()
chrome.socket.create(
type: SocketType,
options?: CreateOptions,
callback?: function,
)
Erstellt einen Socket des angegebenen Typs, der eine Verbindung zum angegebenen Remote-Computer herstellt.
Parameter
-
Typ
Der Typ des zu erstellenden Sockets. Muss
tcp
oderudp
sein. -
Optionen
CreateOptions – optional
Die Socket-Optionen.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(createInfo: CreateInfo) => void
-
createInfo
-
Gibt Folgendes zurück:
-
Promise<CreateInfo>
Chrome 121 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
destroy()
chrome.socket.destroy(
socketId: number,
)
Zerstört den Socket. Jeder erstellte Socket sollte nach der Verwendung gelöscht werden.
Parameter
-
socketId
Zahl
Die Socket-ID.
disconnect()
chrome.socket.disconnect(
socketId: number,
)
Trennt den Socket. Bei UDP-Sockets ist disconnect
kein Betrieb, kann aber sicher aufgerufen werden.
Parameter
-
socketId
Zahl
Die Socket-ID.
getInfo()
chrome.socket.getInfo(
socketId: number,
callback?: function,
)
Ruft den Status des angegebenen Sockets ab.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: SocketInfo) => void
-
Ergebnis
-
Gibt Folgendes zurück:
-
Promise<SocketInfo>
Chrome 121 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getJoinedGroups()
chrome.socket.getJoinedGroups(
socketId: number,
callback: function,
)
Ruft die Multicast-Gruppenadressen ab, der der Socket derzeit zugewiesen ist
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(groups: string[]) => void
-
Gruppen
String[]
-
getNetworkList()
chrome.socket.getNetworkList(
callback?: function,
)
Ruft Informationen zu lokalen Adaptern auf diesem System ab.
Parameter
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: NetworkInterface[]) => void
-
Ergebnis
-
Gibt Folgendes zurück:
-
Promise<NetworkInterface[]>
Chrome 121 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
joinGroup()
chrome.socket.joinGroup(
socketId: number,
address: string,
callback: function,
)
Tritt der Multicast-Gruppe bei und beginne, Pakete von dieser Gruppe zu empfangen. Der Socket muss vom Typ UDP sein und an einen lokalen Port gebunden sein, bevor diese Methode aufgerufen wird.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Adresse
String
Die E-Mail-Adresse der Gruppe, der Sie beitreten möchten. Domainnamen werden nicht unterstützt.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
leaveGroup()
chrome.socket.leaveGroup(
socketId: number,
address: string,
callback: function,
)
Verlasse die zuvor mit joinGroup
beigetretene Multicast-Gruppe. Sie müssen die Multicast-Gruppe nicht verlassen, bevor Sie den Socket löschen oder verlassen. Dies wird vom Betriebssystem automatisch aufgerufen.
Durch das Verlassen der Gruppe wird verhindert, dass der Router Multicast-Datagramme an den lokalen Host sendet, vorausgesetzt, dass kein anderer Prozess auf dem Host noch der Gruppe beigetreten ist.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Adresse
String
Die Gruppenadresse, die verlassen werden soll. Domainnamen werden nicht unterstützt.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
listen()
chrome.socket.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
)
Diese Methode gilt nur für TCP-Sockets. Wartet auf Verbindungen am angegebenen Port und der angegebenen Adresse. Dadurch wird dies effektiv zu einem Server-Socket und die Client-Socket-Funktionen (Verbinden, Lesen, Schreiben) können auf diesem Socket nicht mehr verwendet werden.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Adresse
String
Die Adresse des lokalen Computers.
-
Port
Zahl
Der Port des lokalen Computers.
-
Rückstand
Zahl optional
Länge der Warteschlange für die Überwachung des Sockets.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
read()
chrome.socket.read(
socketId: number,
bufferSize?: number,
callback: function,
)
Liest Daten vom angegebenen angeschlossenen Socket.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
bufferSize
Zahl optional
Die Größe des Lesepuffers.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(readInfo: ReadInfo) => void
-
readInfo
-
recvFrom()
chrome.socket.recvFrom(
socketId: number,
bufferSize?: number,
callback: function,
)
Empfängt Daten vom angegebenen UDP-Socket.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
bufferSize
Zahl optional
Die Größe des Zwischenspeichers für eingehende Daten.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(recvFromInfo: RecvFromInfo) => void
-
recvFromInfo
-
secure()
chrome.socket.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
Starten Sie eine TLS-Clientverbindung über einen verbundenen TCP-Client-Socket.
Parameter
-
socketId
Zahl
Der angeschlossene Socket, der verwendet werden soll.
-
Optionen
SecureOptions – optional
Einschränkungen und Parameter für die TLS-Verbindung.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
sendTo()
chrome.socket.sendTo(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
callback: function,
)
Sendet Daten auf dem angegebenen UDP-Socket an die angegebene Adresse und den angegebenen Port.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Daten
ArrayBuffer
Die zu schreibenden Daten.
-
Adresse
String
Die Adresse des Remote-Computers.
-
Port
Zahl
Der Port des Remote-Computers.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(writeInfo: WriteInfo) => void
-
writeInfo
-
setKeepAlive()
chrome.socket.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
Aktiviert oder deaktiviert die Keep-Alive-Funktion für eine TCP-Verbindung.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
aktivieren
boolean
Falls wahr, aktivieren Sie die Keep-Alive-Funktion.
-
delay
Zahl optional
Legen Sie die Verzögerung in Sekunden zwischen dem letzten empfangenen Datenpaket und der ersten Keepalive-Prüfung fest. Der Standardwert ist 0.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: boolean) => void
-
Ergebnis
boolean
-
setMulticastLoopbackMode()
chrome.socket.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
)
Legen Sie fest, ob Multicast-Pakete, die vom Host an die Multicast-Gruppe gesendet werden, zurück zum Host weitergeleitet werden.
Hinweis: Das Verhalten von setMulticastLoopbackMode
unterscheidet sich leicht zwischen Windows- und Unix-ähnlichen Systemen. Diese Inkonsistenz tritt nur auf, wenn mehr als eine Anwendung auf demselben Host mit derselben Multicast-Gruppe verbunden ist, während im Multicast-Loopback-Modus unterschiedliche Einstellungen festgelegt sind. Unter Windows empfangen Anwendungen mit deaktiviertem Loopback die Loopback-Pakete nicht. Bei Unix-ähnlichen Systemen senden Anwendungen mit deaktiviertem Loopback die Loopback-Pakete nicht an andere Anwendungen auf demselben Host. Siehe MSDN: http://goo.gl/6vqbj
Für den Aufruf dieser Methode sind keine Multicast-Berechtigungen erforderlich.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
aktiviert
boolean
Geben Sie an, ob der Loopback-Modus aktiviert werden soll.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
setMulticastTimeToLive()
chrome.socket.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
)
Legen Sie die Gültigkeitsdauer von Multicast-Paketen fest, die an die Multicast-Gruppe gesendet werden.
Für den Aufruf dieser Methode sind keine Multicast-Berechtigungen erforderlich.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
ttl
Zahl
Der Wert der Gültigkeitsdauer.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: number) => void
-
Ergebnis
Zahl
-
setNoDelay()
chrome.socket.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
Legt TCP_NODELAY
für eine TCP-Verbindung fest oder löscht sie. Der Algorithmus von Nagle wird deaktiviert, wenn TCP_NODELAY
festgelegt ist.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
noDelay
boolean
Wenn „true“, wird der Algorithmus von Nagle deaktiviert.
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(result: boolean) => void
-
Ergebnis
boolean
-
write()
chrome.socket.write(
socketId: number,
data: ArrayBuffer,
callback: function,
)
Schreibt Daten auf dem angegebenen verbundenen Socket.