Beschreibung
Mit der chrome.sockets.tcpServer
API können Sie Serveranwendungen mit TCP-Verbindungen erstellen. Diese API ersetzt die TCP-Funktionen, die zuvor in der chrome.socket
API verfügbar waren.
Manifest
Die folgenden Schlüssel müssen im Manifest deklariert werden, damit diese API verwendet werden kann.
"sockets"
Typen
AcceptErrorInfo
Attribute
-
resultCode
Zahl
Der vom zugrunde liegenden Netzwerkaufruf zurückgegebene Ergebniscode.
-
socketId
Zahl
Die Server-Socket-ID.
AcceptInfo
Attribute
-
clientSocketId
Zahl
Die Client-Socket-Kennung, d.h. die Socket-Kennung der neu hergestellten Verbindung. Diese Socket-Kennung sollte nur mit Funktionen aus dem Namespace
chrome.sockets.tcp
verwendet werden. Der Client-Socket ist anfangs pausiert und muss von der Anwendung explizit reaktiviert werden, damit Daten empfangen werden können. -
socketId
Zahl
Die Server-Socket-ID.
CreateInfo
Attribute
-
socketId
Zahl
Die ID des neu erstellten Serversockets. Socket-IDs, die mit dieser API erstellt wurden, sind nicht mit Socket-IDs kompatibel, die mit anderen APIs erstellt wurden, z. B. mit der eingestellten
[
socket](../socket/)
API.
SocketInfo
Attribute
-
localAddress
String optional
Wenn der Socket aktiv ist, enthält er seine lokale IPv4-/IPv6-Adresse.
-
localPort
number optional
Wenn der Socket aktiv ist, enthält er den lokalen Port.
-
name
String optional
Anwendungsdefinierter String, der dem Socket zugeordnet ist.
-
pausiert
boolean
Flag, das angibt, ob Verbindungsanfragen an einem Listening-Socket über das
onAccept
-Ereignis gesendet oder in der Listen-Warteschlange in der Warteschlange stehen.setPaused
ansehen. Der Standardwert lautet „false“. -
nichtflüchtige
boolean
Flag, das angibt, ob der Socket geöffnet bleibt, wenn die Ereignisseite der Anwendung entladen wird (siehe
SocketProperties.persistent
). Der Standardwert ist „false“. -
socketId
Zahl
Die Socket-ID.
SocketProperties
Attribute
-
name
String optional
Ein anwendungsdefinierter String, der dem Socket zugeordnet ist.
-
nichtflüchtige
boolean optional
Flag, das angibt, ob der Socket geöffnet bleibt, wenn die Ereignisseite der Anwendung entladen wird (siehe App-Lebenszyklus verwalten). Der Standardwert ist „false“. Wenn die Anwendung geladen wird, können alle zuvor mit „persistent=true“ geöffneten Sockets mit
getSockets
abgerufen werden.
Methoden
close()
chrome.sockets.tcpServer.close(
socketId: number,
callback?: function,
): Promise<void>
Trennt die Verbindung und löscht den Socket. Jeder erstellte Socket sollte nach der Verwendung geschlossen werden. Die Socket-ID ist nicht mehr gültig, sobald die Funktion aufgerufen wird. Es wird jedoch garantiert, dass der Socket erst geschlossen wird, wenn der Callback aufgerufen wird.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 121 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Erstellt einen TCP-Serversocket.
Parameter
-
Properties
SocketProperties optional
Die Socket-Attribute (optional).
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(createInfo: CreateInfo) => void
-
createInfo
Das Ergebnis der Socket-Erstellung.
-
Ausgabe
-
Promise<CreateInfo>
Chrome 121 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Trennt den Listening-Socket, d.h., es werden keine neuen Verbindungen mehr akzeptiert und die Adresse/der Port, an die/den der Socket gebunden ist, wird freigegeben. Die Socket-ID bleibt gültig und kann z.B. mit listen
verwendet werden, um Verbindungen an einem neuen Port und einer neuen Adresse anzunehmen.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 121 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getInfo()
chrome.sockets.tcpServer.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Ruft den Status des angegebenen Sockets ab.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(socketInfo: SocketInfo) => void
-
socketInfo
Objekt mit den Socket-Informationen.
-
Ausgabe
-
Promise<SocketInfo>
Chrome 121 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getSockets()
chrome.sockets.tcpServer.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Ruft die Liste der derzeit geöffneten Sockets ab, die der Anwendung gehören.
Parameter
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(socketInfos: SocketInfo[]) => void
-
socketInfos
Array mit Objekten, die Socket-Informationen enthalten.
-
Ausgabe
-
Promise<SocketInfo[]>
Chrome 121 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
listen()
chrome.sockets.tcpServer.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
): void
Wartet auf Verbindungen am angegebenen Port und an der angegebenen Adresse. Wenn der Port/die Adresse verwendet wird, gibt der Callback einen Fehler an.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Adresse
String
Die Adresse des lokalen Computers.
-
Port
Zahl
Der Port des lokalen Computers. Wenn
0
festgelegt ist, wird ein kostenloser Port dynamisch ausgewählt. Der dynamisch zugewiesene Port kann durch Aufrufen vongetInfo
ermittelt werden. -
backlog
number optional
Länge der Listen-Warteschlange des Sockets. Der Standardwert hängt vom Betriebssystem (SOMAXCONN) ab, das für die meisten Anwendungen eine angemessene Warteschlangenlänge gewährleistet.
-
callback
Funktion
Der Parameter
callback
sieht so aus:(result: number) => void
-
Ergebnis
Zahl
Der vom zugrunde liegenden Netzwerkaufruf zurückgegebene Ergebniscode. Ein negativer Wert weist auf einen Fehler hin.
-
setPaused()
chrome.sockets.tcpServer.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Aktiviert oder deaktiviert, dass ein Listening-Socket neue Verbindungen akzeptiert. Wenn ein Listening-Socket pausiert wird, akzeptiert er neue Verbindungen, bis sein Backlog (siehe Funktion listen
) voll ist. Danach werden zusätzliche Verbindungsanfragen abgelehnt. onAccept
-Ereignisse werden nur ausgelöst, wenn die Socket-Verbindung nicht pausiert ist.
Parameter
-
socketId
Zahl
-
pausiert
boolean
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 121 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
update()
chrome.sockets.tcpServer.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Aktualisiert die Socket-Attribute.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Properties
Die zu aktualisierenden Attribute.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 121 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
Ereignisse
onAccept
chrome.sockets.tcpServer.onAccept.addListener(
callback: function,
)
Ereignis, das ausgelöst wird, wenn eine Verbindung zum Serversocket hergestellt wurde.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(info: AcceptInfo) => void
-
Info
-
onAcceptError
chrome.sockets.tcpServer.onAcceptError.addListener(
callback: function,
)
Ereignis, das ausgelöst wird, wenn ein Netzwerkfehler auftritt, während die Laufzeit auf neue Verbindungen an der Socketadresse und am Port wartet. Sobald dieses Ereignis ausgelöst wird, wird der Socket auf paused
gesetzt und es werden keine weiteren onAccept
-Ereignisse für diesen Socket ausgelöst, bis der Socket fortgesetzt wird.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(info: AcceptErrorInfo) => void
-
Info
-