chrome.sockets.tcp

Description

Utilisez l'API chrome.sockets.tcp pour envoyer et recevoir des données sur le réseau à l'aide de connexions TCP. Cette API remplace la fonctionnalité TCP précédemment disponible dans l'API chrome.socket.

Manifest

Les clés suivantes doivent être déclarées dans le fichier manifeste pour utiliser cette API.

"sockets"

Types

CreateInfo

Propriétés

  • socketId

    number

    Identifiant du socket nouvellement créé. Notez que les ID de socket créés à partir de cette API ne sont pas compatibles avec ceux créés à partir d'autres API, comme l'API [socket](../socket/) obsolète.

DnsQueryType

Chrome 103 et versions ultérieures

Préférences de résolution DNS. La valeur par défaut est any et utilise la configuration actuelle de l'OS, qui peut renvoyer une adresse IPv4 ou IPv6. ipv4 force IPv4, et ipv6 force IPv6.

Enum

"any"

"ipv4"

"ipv6"

ReceiveErrorInfo

Propriétés

  • resultCode

    number

    Code de résultat renvoyé par l'appel réseau sous-jacent.

  • socketId

    number

    Identifiant de socket.

ReceiveInfo

Propriétés

  • data

    ArrayBuffer

    Données reçues, avec une taille maximale de bufferSize.

  • socketId

    number

    Identifiant de socket.

SecureOptions

Propriétés

SendInfo

Propriétés

  • bytesSent

    numéro facultatif

    Nombre d'octets envoyés (si le résultat est égal à 0)

  • resultCode

    number

    Code de résultat renvoyé par l'appel réseau sous-jacent. Une valeur négative indique une erreur.

SocketInfo

Propriétés

  • bufferSize

    numéro facultatif

    Taille du tampon utilisé pour recevoir des données. Si aucune taille de mémoire tampon n'a été spécifiée explicitement, la valeur n'est pas fournie.

  • connecté

    boolean

    Indique si le socket est connecté à un pair distant.

  • localAddress

    string facultatif

    Si le socket sous-jacent est connecté, contient son adresse IPv4/6 locale.

  • localPort

    numéro facultatif

    Si le socket sous-jacent est connecté, il contient son port local.

  • name

    string facultatif

    Chaîne définie par l'application associée au socket.

  • mis en veille

    boolean

    Indique si un socket connecté empêche son pair d'envoyer plus de données (voir setPaused).

  • peerAddress

    string facultatif

    Si le socket sous-jacent est connecté, contient l'adresse du pair/ IPv4/6.

  • peerPort

    numéro facultatif

    Si le socket sous-jacent est connecté, il contient le port du pair.

  • SSD

    boolean

    Indique si le socket est laissé ouvert lorsque l'application est suspendue (voir SocketProperties.persistent).

  • socketId

    number

    Identifiant de socket.

SocketProperties

Propriétés

  • bufferSize

    numéro facultatif

    Taille du tampon utilisé pour recevoir des données. La valeur par défaut est 4096.

  • name

    string facultatif

    Chaîne définie par l'application et associée au socket.

  • SSD

    Booléen facultatif

    Indique si le socket est laissé ouvert lorsque la page d'événements de l'application est déchargée (voir Gérer le cycle de vie d'une application). La valeur par défaut est "false". Une fois l'application chargée, tous les sockets précédemment ouverts avec persistent=true peuvent être récupérés avec getSockets.

TLSVersionConstraints

Propriétés

  • max

    string facultatif

  • min

    string facultatif

    Versions minimale et maximale acceptables de TLS. Les valeurs acceptées sont tls1.2 et tls1.3.

    Les valeurs tls1 et tls1.1 ne sont plus acceptées. Si min est défini sur l'une de ces valeurs, il sera automatiquement limité à tls1.2. Si max est défini sur l'une de ces valeurs, ou sur toute autre valeur non reconnue, elle est ignorée sans notification.

Méthodes

close()

Promesse
chrome.sockets.tcp.close(
  socketId: number,
  callback?: function,
)

Ferme le socket et libère l'adresse ou le port auquel le socket est lié. Chaque socket créé doit être fermé après utilisation. L'identifiant de socket n'est plus valide au moment où la fonction est appelée. Toutefois, la fermeture du socket est garantie uniquement lorsque le rappel est invoqué.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 121 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

connect()

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

Connecte le socket à une machine distante. Lorsque l'opération connect aboutit, des événements onReceive sont déclenchés lorsque des données sont reçues du pair. Si une erreur réseau se produit lorsque l'environnement d'exécution reçoit des paquets, un événement onReceiveError est déclenché. Aucun autre événement onReceive n'est alors déclenché pour ce socket tant que la méthode resume n'est pas appelée.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • peerAddress

    chaîne

    Adresse de la machine distante. Les formats de nom DNS ainsi que les formats IPv4 et IPv6 sont acceptés.

  • peerPort

    number

    Port de la machine distante.

  • dnsQueryType

    DnsQueryType facultatif

    Chrome 103 et versions ultérieures

    La préférence de résolution des adresses.

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (result: number)=>void

    • résultat

      number

      Code de résultat renvoyé par l'appel réseau sous-jacent. Une valeur négative indique une erreur.

create()

Promesse
chrome.sockets.tcp.create(
  properties?: SocketProperties,
  callback?: function,
)

Crée un socket TCP.

Paramètres

  • du bucket

    SocketProperties facultatif

    Propriétés du socket (facultatif).

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (createInfo: CreateInfo)=>void

    • createInfo

      Résultat de la création du socket.

Renvoie

  • Promise<CreateInfo>

    Chrome 121 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

disconnect()

Promesse
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)

Débranche le support.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 121 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getInfo()

Promesse
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)

Récupère l'état d'un socket donné.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (socketInfo: SocketInfo)=>void

    • socketInfo

      Objet contenant les informations de socket.

Renvoie

  • Promise<SocketInfo>

    Chrome 121 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getSockets()

Promesse
chrome.sockets.tcp.getSockets(
  callback?: function,
)

Récupère la liste des sockets actuellement ouverts appartenant à l'application.

Paramètres

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (socketInfos: SocketInfo[])=>void

    • socketInfos

      Tableau d'objets contenant des informations de socket.

Renvoie

  • Promise<SocketInfo[]>

    Chrome 121 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

secure()

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

Démarrez une connexion client TLS sur le socket client TCP connecté.

Paramètres

  • socketId

    number

    Prise existante connectée à utiliser.

  • options

    SecureOptions facultatif

    Contraintes et paramètres de la connexion TLS.

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (result: number)=>void

    • résultat

      number

send()

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

Envoie des données sur le socket TCP donné.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • data

    ArrayBuffer

    Données à envoyer.

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (sendInfo: SendInfo)=>void

    • sendInfo

      Résultat de la méthode send.

setKeepAlive()

chrome.sockets.tcp.setKeepAlive(
  socketId: number,
  enable: boolean,
  delay?: number,
  callback: function,
)

Active ou désactive la fonctionnalité keep-alive pour une connexion TCP.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • enable

    boolean

    Si la valeur est "true", activez la fonctionnalité de message keep-alive.

  • delay

    numéro facultatif

    Définissez le délai en secondes entre le dernier paquet de données reçu et la première vérification keepalive. La valeur par défaut est 0.

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (result: number)=>void

    • résultat

      number

      Code de résultat renvoyé par l'appel réseau sous-jacent. Une valeur négative indique une erreur.

setNoDelay()

chrome.sockets.tcp.setNoDelay(
  socketId: number,
  noDelay: boolean,
  callback: function,
)

Définit ou efface TCP_NODELAY pour une connexion TCP. L'algorithme de Nagle sera désactivé lorsque TCP_NODELAY sera défini.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • noDelay

    boolean

    Si la valeur est "true", désactive l'algorithme de Nagle.

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (result: number)=>void

    • résultat

      number

      Code de résultat renvoyé par l'appel réseau sous-jacent. Une valeur négative indique une erreur.

setPaused()

Promesse
chrome.sockets.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

Active ou désactive l'autorisation pour l'application de recevoir des messages de son pair. La valeur par défaut est "false". La mise en pause d'un socket est généralement utilisée par une application pour limiter les données envoyées par son pair. Lorsqu'un socket est suspendu, aucun événement onReceive n'est déclenché. Lorsqu'un socket est connecté et réactivé, des événements onReceive sont à nouveau déclenchés lors de la réception de messages.

Paramètres

  • socketId

    number

  • mis en veille

    boolean

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 121 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

update()

Promesse
chrome.sockets.tcp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

Met à jour les propriétés du socket.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • du bucket

    Propriétés à mettre à jour.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 121 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

Événements

onReceive

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

Événement déclenché lorsque des données ont été reçues pour un socket donné.

Paramètres

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (info: ReceiveInfo)=>void

onReceiveError

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

Événement déclenché lorsqu'une erreur réseau s'est produite alors que l'environnement d'exécution attendait des données sur l'adresse et le port du socket. Une fois cet événement déclenché, le socket est défini sur paused et aucun autre événement onReceive n'est déclenché pour ce socket.

Paramètres