chrome.sockets.tcpServer

Description

Utilisez l'API chrome.sockets.tcpServer pour créer des applications serveur à l'aide de connexions TCP. Cette API remplace la fonctionnalité TCP qui se trouvait auparavant dans l'API chrome.socket.

Fichier manifeste

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

"sockets"

Types

AcceptErrorInfo

Propriétés

  • resultCode

    Total

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

  • socketId

    Total

    Identifiant du socket du serveur.

AcceptInfo

Propriétés

  • clientSocketId

    Total

    Identifiant du socket client, c'est-à-dire l'identifiant du socket de la connexion nouvellement établie. Cet identifiant de socket ne doit être utilisé qu'avec les fonctions de l'espace de noms chrome.sockets.tcp. Notez que le socket client est initialement mis en pause et doit être explicitement réactivé par l'application pour commencer à recevoir des données.

  • socketId

    Total

    Identifiant du socket du serveur.

CreateInfo

Propriétés

  • socketId

    Total

    ID du socket de serveur 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.

SocketInfo

Propriétés

  • localAddress

    chaîne facultative

    Si le socket est à l'écoute, il contient son adresse IPv4/6 locale.

  • localPort

    number facultatif

    Si le socket est à l'écoute, il contient son port local.

  • nom

    chaîne facultative

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

  • mis en veille

    booléen

    Indicateur indiquant si les demandes de connexion sur un socket d'écoute sont distribuées via l'événement onAccept ou mises en file d'attente dans le backlog de la file d'attente d'écoute. Consultez les setPaused. La valeur par défaut est "false".

  • SSD

    booléen

    Indicateur indiquant si le socket reste ouvert lorsque la page d'événement de l'application est déchargée (voir SocketProperties.persistent). La valeur par défaut est "false".

  • socketId

    Total

    Identifiant du socket.

SocketProperties

Propriétés

  • nom

    chaîne facultative

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

  • SSD

    booléen facultatif

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

Méthodes

close()

Promise
chrome.sockets.tcpServer.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

Déconnecte et détruit le socket. Chaque socket créé doit être fermé après utilisation. L'ID du socket n'est plus valide dès que la fonction est appelée. Toutefois, la fermeture du socket n'est garantie que lorsque le rappel est invoqué.

Paramètres

  • socketId

    Total

    Identifiant du socket.

  • callback

    function facultatif

    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 les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

create()

Promise
chrome.sockets.tcpServer.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

Crée un socket de serveur TCP.

Paramètres

  • properties

    SocketProperties facultatif

    Propriétés du socket (facultatif).

  • callback

    function facultatif

    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 les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

disconnect()

Promise
chrome.sockets.tcpServer.disconnect(
  socketId: number,
  callback?: function,
)
: Promise<void>

Déconnecte le socket d'écoute, c'est-à-dire qu'il cesse d'accepter de nouvelles connexions et libère l'adresse/le port auxquels le socket est lié. L'identifiant du socket reste valide. Par exemple, il peut être utilisé avec listen pour accepter les connexions sur un nouveau port et une nouvelle adresse.

Paramètres

  • socketId

    Total

    Identifiant du socket.

  • callback

    function facultatif

    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 les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getInfo()

Promise
chrome.sockets.tcpServer.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

Récupère l'état du socket donné.

Paramètres

  • socketId

    Total

    Identifiant du socket.

  • callback

    function facultatif

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

    (socketInfo: SocketInfo) => void

    • socketInfo

      Objet contenant les informations du socket.

Renvoie

  • Promise<SocketInfo>

    Chrome 121 et versions ultérieures

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

getSockets()

Promise
chrome.sockets.tcpServer.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

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

Paramètres

  • callback

    function facultatif

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

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Tableau d'objets contenant des informations sur les sockets.

Renvoie

  • Promise<SocketInfo[]>

    Chrome 121 et versions ultérieures

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

listen()

chrome.sockets.tcpServer.listen(
  socketId: number,
  address: string,
  port: number,
  backlog?: number,
  callback: function,
)
: void

Écoute les connexions sur le port et l'adresse spécifiés. Si le port ou l'adresse sont utilisés, le rappel indique un échec.

Paramètres

  • socketId

    Total

    Identifiant du socket.

  • adresse

    chaîne

    Adresse de la machine locale.

  • port

    Total

    Port de la machine locale. Lorsque la valeur est définie sur 0, un port libre est choisi de manière dynamique. Vous pouvez trouver le port alloué de manière dynamique en appelant getInfo.

  • backlog

    number facultatif

    Longueur de la file d'attente d'écoute du socket. La valeur par défaut dépend du système d'exploitation (SOMAXCONN), qui garantit une longueur de file d'attente raisonnable pour la plupart des applications.

  • callback

    fonction

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

    (result: number) => void

    • résultat

      Total

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

setPaused()

Promise
chrome.sockets.tcpServer.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

Active ou désactive l'acceptation de nouvelles connexions par un socket d'écoute. Lorsqu'il est mis en veille, un socket d'écoute accepte de nouvelles connexions jusqu'à ce que son backlog (voir la fonction listen) soit plein, puis refuse les demandes de connexion supplémentaires. Les événements onAccept ne sont déclenchés que lorsque le socket est réactivé.

Paramètres

  • socketId

    Total

  • mis en veille

    booléen

  • callback

    function facultatif

    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 les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

update()

Promise
chrome.sockets.tcpServer.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

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

Paramètres

  • socketId

    Total

    Identifiant du socket.

  • properties

    Propriétés à mettre à jour.

  • callback

    function facultatif

    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 les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

Événements

onAccept

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

Événement déclenché lorsqu'une connexion a été établie avec le socket du serveur.

Paramètres

  • callback

    fonction

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

    (info: AcceptInfo) => void

onAcceptError

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

Événement déclenché lorsqu'une erreur réseau s'est produite pendant que le runtime attendait de nouvelles connexions 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 onAccept n'est déclenché pour ce socket tant qu'il n'est pas rétabli.

Paramètres