chrome.sockets.tcpServer

Beschreibung

Verwenden Sie die chrome.sockets.tcpServer API, um Serveranwendungen mit TCP-Verbindungen zu erstellen. Diese API ersetzt die TCP-Funktion, die zuvor in der chrome.socket API zu finden war.

Manifest

Die folgenden Schlüssel müssen im Manifest deklariert werden, um diese API verwenden zu können.

"sockets"

Typen

AcceptErrorInfo

Attribute

  • resultCode

    Zahl

    Der Ergebniscode, der vom zugrunde liegenden Netzwerkaufruf zurückgegeben wird.

  • socketId

    Zahl

    Die Server-Socket-ID.

AcceptInfo

Attribute

  • clientSocketId

    Zahl

    Die Client-Socket-ID, d.h. die Socket-ID der neu hergestellten Verbindung. Diese Socket-ID sollte nur mit Funktionen aus dem Namespace chrome.sockets.tcp verwendet werden. Beachten Sie, dass der Client-Socket anfänglich angehalten ist und von der Anwendung explizit wieder aktiviert werden muss, um mit dem Empfang von Daten zu beginnen.

  • socketId

    Zahl

    Die Server-Socket-ID.

CreateInfo

Attribute

  • socketId

    Zahl

    Die ID des neu erstellten Server-Sockets. Beachten Sie, dass Socket-IDs, die von dieser API erstellt wurden, nicht mit Socket-IDs kompatibel sind, die aus anderen APIs wie der verworfenen [Socket](../socket/) API erstellt wurden.

SocketInfo

Attribute

  • localAddress

    String optional

    Wenn der Socket empfangsbereit ist, enthält er seine lokale IPv4/6-Adresse.

  • localPort

    Zahl optional

    Wenn der Socket überwacht, enthält er seinen lokalen Port.

  • Name

    String optional

    Anwendungsdefinierter String, der dem Socket zugeordnet ist.

  • pausiert

    boolean

    Flag, das angibt, ob Verbindungsanfragen an einem wartenden Socket über das onAccept-Ereignis weitergeleitet oder im Rückstand der Warteschlange für die Überwachung in die Warteschlange gestellt werden. 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

    Boolescher Wert 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 Sockets, die zuvor mit persistent=true geöffnet wurden, mit getSockets abgerufen werden.

Methoden

close()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.sockets.tcpServer.close(
  socketId: number,
  callback?: function,
)

Trennt den Socket und zerstört ihn. Jeder erstellte Socket sollte nach der Verwendung geschlossen werden. Die Socket-ID ist nicht mehr gültig, sobald die Funktion aufgerufen wird. Allerdings wird der Socket nur dann garantiert geschlossen, wenn der Callback aufgerufen wird.

Parameter

  • socketId

    Zahl

    Die Socket-ID.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    () => void

Gibt Folgendes zurück:

  • Versprechen<void>

    Chrome 121 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

create()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.sockets.tcpServer.create(
  properties?: SocketProperties,
  callback?: function,
)

Erstellt einen TCP-Server-Socket.

Parameter

  • Properties

    SocketPropertiesoptional

    Die Socket-Eigenschaften (optional).

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (createInfo: CreateInfo) => void

    • createInfo

      Das Ergebnis der Socket-Erstellung.

Gibt Folgendes zurück:

  • Promise&lt;CreateInfo&gt;

    Chrome 121 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

disconnect()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.sockets.tcpServer.disconnect(
  socketId: number,
  callback?: function,
)

Trennt den Überwachungs-Socket, d. h., akzeptiert keine neuen Verbindungen mehr und gibt die Adresse bzw. den Port frei, an die der Socket gebunden ist. Die Socket-ID bleibt gültig, z.B. Er kann mit listen verwendet werden, um Verbindungen zu einem neuen Port und einer neuen Adresse zu akzeptieren.

Parameter

  • socketId

    Zahl

    Die Socket-ID.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    () => void

Gibt Folgendes zurück:

  • Versprechen<void>

    Chrome 121 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

getInfo()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.sockets.tcpServer.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>

    (socketInfo: SocketInfo) => void

    • socketInfo

      Objekt, das die Socket-Informationen enthält.

Gibt Folgendes zurück:

  • Promise&lt;SocketInfo&gt;

    Chrome 121 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

getSockets()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.sockets.tcpServer.getSockets(
  callback?: function,
)

Ruft die Liste der aktuell geöffneten Sockets ab, die der Anwendung gehören.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Array eines Objekts mit Socket-Informationen.

Gibt Folgendes zurück:

  • Promise&lt;SocketInfo[]&gt;

    Chrome 121 oder höher

    Promise-Objekte 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,
)

Wartet auf Verbindungen am angegebenen Port und der angegebenen Adresse. Wenn der Port oder die Adresse bereits verwendet wird, weist der Callback auf einen Fehler hin.

Parameter

  • socketId

    Zahl

    Die Socket-ID.

  • Adresse

    String

    Die Adresse des lokalen Computers.

  • Port

    Zahl

    Der Port des lokalen Computers. Wenn dieser Wert auf 0 gesetzt ist, wird ein kostenloser Port dynamisch ausgewählt. Der dynamisch zugewiesene Port kann durch Aufrufen von getInfo ermittelt werden.

  • Rückstand

    Zahl optional

    Länge der Warteschlange für die Überwachung des Sockets. Der Standardwert hängt vom Betriebssystem (SOMAXCONN) ab, wodurch für die meisten Anwendungen eine angemessene Warteschlangenlänge gewährleistet ist.

  • callback

    Funktion

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (result: number) => void

    • Ergebnis

      Zahl

      Der Ergebniscode, der vom zugrunde liegenden Netzwerkaufruf zurückgegeben wird. Ein negativer Wert weist auf einen Fehler hin.

setPaused()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.sockets.tcpServer.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

Aktiviert oder deaktiviert einen Überwachungs-Socket für die Annahme neuer Verbindungen. Wenn ein Überwachungs-Socket angehalten wird, akzeptiert er neue Verbindungen, bis sein Rückstand voll ist (siehe Funktion listen), und lehnt dann weitere Verbindungsanfragen ab. onAccept-Ereignisse werden nur ausgelöst, wenn die Pausierung des Sockets aufgehoben wird.

Parameter

  • socketId

    Zahl

  • pausiert

    boolean

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    () => void

Gibt Folgendes zurück:

  • Versprechen<void>

    Chrome 121 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

update()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.sockets.tcpServer.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

Aktualisiert die Socket-Eigenschaften.

Parameter

  • socketId

    Zahl

    Die Socket-ID.

  • Properties

    Die zu aktualisierenden Eigenschaften.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    () => void

Gibt Folgendes zurück:

  • Versprechen<void>

    Chrome 121 oder höher

    Promise-Objekte 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,
)

Das Ereignis wird ausgelöst, wenn eine Verbindung zum Server-Socket hergestellt wurde.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (info: AcceptInfo) => void

onAcceptError

chrome.sockets.tcpServer.onAcceptError.addListener(
  callback: function,
)

Das Ereignis wird ausgelöst, wenn ein Netzwerkfehler auftrat, während die Laufzeit auf neue Verbindungen an der Socket-Adresse und dem Port wartet. Nachdem dieses Ereignis ausgelöst wurde, 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: <ph type="x-smartling-placeholder"></ph>

    (info: AcceptErrorInfo) => void