chrome.socket

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

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 über disconnect() 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 oder udp.

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

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

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()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.socket.create(
  type: SocketType,
  options?: CreateOptions,
  callback?: function,
)

Erstellt einen Socket des angegebenen Typs, der eine Verbindung zum angegebenen Remote-Computer herstellt.

Parameter

  • Der Typ des zu erstellenden Sockets. Muss tcp oder udp sein.

  • Optionen

    CreateOptionsoptional

    Die Socket-Optionen.

  • callback

    Funktion optional

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

    (createInfo: CreateInfo) => void

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.

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()

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

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.

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()

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

Gibt Folgendes zurück:

  • Promise&lt;NetworkInterface[]&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.

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

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

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

    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

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

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.

Parameter

  • socketId

    Zahl

    Die Socket-ID.

  • Daten

    ArrayBuffer

    Die zu schreibenden Daten.

  • callback

    Funktion

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

    (writeInfo: WriteInfo) => void