chrome.sockets.tcp

Beschreibung

Verwenden Sie die chrome.sockets.tcp API, um mithilfe von TCP-Verbindungen Daten über das Netzwerk zu senden und zu empfangen. 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

CreateInfo

Attribute

  • socketId

    Zahl

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

DnsQueryType

Chrome 103 und höher

DNS-Auflösungseinstellungen. Die Standardeinstellung ist any und verwendet die aktuelle Betriebssystemkonfiguration, die möglicherweise IPv4 oder IPv6 zurückgibt. ipv4 erzwingt IPv4 und ipv6 erzwingt IPv6.

Enum

"alle"

"ipv4"

"ipv6"

ReceiveErrorInfo

Attribute

  • resultCode

    Zahl

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

  • socketId

    Zahl

    Die Socket-ID.

ReceiveInfo

Attribute

  • Daten

    ArrayBuffer

    Die empfangenen Daten mit einer maximalen Größe von bufferSize.

  • socketId

    Zahl

    Die Socket-ID.

SecureOptions

Attribute

SendInfo

Attribute

  • bytesSent

    Zahl optional

    Die Anzahl der gesendeten Byte (falls Ergebnis == 0)

  • resultCode

    Zahl

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

SocketInfo

Attribute

  • bufferSize

    Zahl optional

    Die Größe des Zwischenspeichers, der für den Empfang von Daten verwendet wird. Wenn keine Puffergröße explizit angegeben wurde, wird der Wert nicht angegeben.

  • verbunden

    boolean

    Flag, das angibt, ob der Socket mit einem Remote-Peer verbunden ist.

  • localAddress

    String optional

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

  • localPort

    Zahl optional

    Wenn der zugrunde liegende Socket verbunden ist, enthält er seinen lokalen Port.

  • Name

    String optional

    Anwendungsdefinierter String, der dem Socket zugeordnet ist.

  • pausiert

    boolean

    Flag, das angibt, ob ein verbundener Socket seinen Peer daran hindert, weitere Daten zu senden (siehe setPaused).

  • peerAddress

    String optional

    Wenn der zugrunde liegende Socket verbunden ist, enthält er die Peer-/IPv4/6-Adresse.

  • peerPort

    Zahl optional

    Wenn der zugrunde liegende Socket verbunden ist, enthält er den Peer-Port.

  • nichtflüchtige

    boolean

    Flag, das angibt, ob der Socket geöffnet bleibt, wenn die Anwendung ausgesetzt wird (siehe SocketProperties.persistent).

  • socketId

    Zahl

    Die Socket-ID.

SocketProperties

Attribute

  • bufferSize

    Zahl optional

    Die Größe des Zwischenspeichers, der für den Empfang von Daten verwendet wird. Der Standardwert ist 4.096.

  • 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.

TLSVersionConstraints

Attribute

  • max

    String optional

  • Min.

    String optional

    Die Mindest- und Höchstversion der zulässigen TLS-Versionen. Unterstützte Werte sind tls1.2 oder tls1.3.

    Die Werte tls1 und tls1.1 werden nicht mehr unterstützt. Wenn min auf einen dieser Werte gesetzt ist, wird es automatisch an tls1.2 angepasst. Wenn max auf einen dieser Werte oder einen anderen nicht erkannten Wert festgelegt ist, wird er ignoriert.

Methoden

close()

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

Schließt den Socket und gibt die Adresse bzw. den Port frei, an den der Socket gebunden ist. Jeder erstellte Socket sollte nach der Verwendung geschlossen werden. Die Socket-ID ist nicht mehr gültig, sobald die Funktion aufgerufen wird. Das Socket wird jedoch 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.

connect()

chrome.sockets.tcp.connect(
  socketId: number,
  peerAddress: string,
  peerPort: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)

Verbindet den Socket mit einem Remote-Computer. Wenn der connect-Vorgang erfolgreich abgeschlossen wurde, werden onReceive-Ereignisse ausgelöst, wenn Daten vom Peer empfangen werden. Wenn ein Netzwerkfehler auftritt, während die Laufzeit Pakete empfängt, wird ein onReceiveError-Ereignis ausgelöst. Dann wird kein onReceive-Ereignis für diesen Socket mehr ausgelöst, bis die Methode resume aufgerufen wird.

Parameter

  • socketId

    Zahl

    Die Socket-ID.

  • peerAddress

    String

    Die Adresse des Remote-Computers. Die Formate DNS-Name, IPv4 und IPv6 werden unterstützt.

  • peerPort

    Zahl

    Der Port des Remote-Computers.

  • dnsQueryType

    DnsQueryType optional

    Chrome 103 und höher

    Die Einstellung für die Adressauflösung.

  • 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.

create()

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

Erstellt einen TCP-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.tcp.disconnect(
  socketId: number,
  callback?: function,
)

Trennt den Socket.

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.tcp.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.tcp.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.

secure()

chrome.sockets.tcp.secure(
  socketId: number,
  options?: SecureOptions,
  callback: function,
)

Starten Sie eine TLS-Clientverbindung über den verbundenen TCP-Client-Socket.

Parameter

  • socketId

    Zahl

    Der vorhandene, verbundene Socket, der verwendet werden soll.

  • Optionen

    SecureOptionsoptional

    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

send()

chrome.sockets.tcp.send(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)

Sendet Daten über den angegebenen TCP-Socket.

Parameter

  • socketId

    Zahl

    Die Socket-ID.

  • Daten

    ArrayBuffer

    Die zu sendenden Daten.

  • callback

    Funktion

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

    (sendInfo: SendInfo) => void

    • sendInfo

      Ergebnis der Methode send.

setKeepAlive()

chrome.sockets.tcp.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: number) => void

    • Ergebnis

      Zahl

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

setNoDelay()

chrome.sockets.tcp.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: 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.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

Aktiviert oder deaktiviert die Anwendung für den Empfang von Nachrichten von ihrem Peer. Der Standardwert lautet „false“. Das Pausieren eines Sockets wird in der Regel von Anwendungen verwendet, um die von ihrem Peer gesendeten Daten zu drosseln. Wenn ein Socket pausiert ist, wird kein onReceive-Ereignis ausgelöst. Wenn ein Socket verbunden und die Pausierung aufgehoben wird, werden onReceive-Ereignisse beim Empfang von Nachrichten wieder ausgelöst.

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.tcp.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

onReceive

chrome.sockets.tcp.onReceive.addListener(
  callback: function,
)

Das Ereignis wird ausgelöst, wenn Daten für einen bestimmten Socket empfangen wurden.

Parameter

  • callback

    Funktion

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

    (info: ReceiveInfo) => void

onReceiveError

chrome.sockets.tcp.onReceiveError.addListener(
  callback: function,
)

Das Ereignis wird ausgelöst, wenn ein Netzwerkfehler auftrat, während die Laufzeit auf Daten über die Socket-Adresse und den Port gewartet hat. Sobald dieses Ereignis ausgelöst wird, wird der Socket auf paused gesetzt und es werden keine weiteren onReceive-Ereignisse für diesen Socket ausgelöst.

Parameter