Description
Utilisez l'API chrome.sockets.tcpServer
pour créer des applications de serveur à 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
AcceptErrorInfo
Propriétés
-
resultCode
number
Code de résultat renvoyé par l'appel réseau sous-jacent.
-
socketId
number
Identifiant de socket serveur.
AcceptInfo
Propriétés
-
clientSocketId
number
Identifiant de socket client, c'est-à-dire l'identifiant de socket de la connexion nouvellement établie. Cet identifiant de socket ne doit être utilisé qu'avec des 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
number
Identifiant de socket serveur.
CreateInfo
Propriétés
-
socketId
number
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
string facultatif
Si le socket écoute, contient son adresse IPv4/6 locale.
-
localPort
numéro facultatif
Si le socket écoute, contient son port local.
-
name
string facultatif
Chaîne définie par l'application associée au socket.
-
mis en veille
boolean
Indique si les requêtes de connexion sur un socket d'écoute sont distribuées via l'événement
onAccept
ou mises en file d'attente dans la file d'attente d'écoute. Consultez lessetPaused
. La valeur par défaut est "false". -
SSD
boolean
Indique 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
number
Identifiant de socket.
SocketProperties
Propriétés
-
name
string facultatif
Chaîne définie par l'application et associée au socket.
-
SSD
Booléen facultatif
Indique si le socket reste 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
.
Méthodes
close()
chrome.sockets.tcpServer.close(
socketId: number,
callback?: function,
)
Déconnecte et détruit le socket. 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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
)
Crée un socket de serveur 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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
)
Déconnecte le socket d'écoute, c'est-à-dire cesse d'accepter de nouvelles connexions et libère l'adresse ou le port auquel le socket est lié. L'identifiant de socket reste valide. Vous pouvez, par exemple, l'utiliser avec listen
pour accepter des connexions sur un nouveau port et une nouvelle adresse.
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getInfo()
chrome.sockets.tcpServer.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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getSockets()
chrome.sockets.tcpServer.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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et 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,
)
É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
number
Identifiant de socket.
-
adresse
chaîne
Adresse de la machine locale.
-
port
number
Port de la machine locale. Lorsque ce paramètre est défini sur
0
, un port libre est choisi de manière dynamique. Vous pouvez trouver le port alloué de manière dynamique en appelantgetInfo
. -
en attente
numéro facultatif
Longueur de la file d'attente d'écoute du socket. La valeur par défaut dépend du système d'exploitation (SOMAXCONN), ce qui garantit une longueur de file d'attente raisonnable pour la plupart des applications.
-
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()
chrome.sockets.tcpServer.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Active ou désactive un socket d'écoute d'accepter de nouvelles connexions. Lorsqu'il est suspendu, un socket d'écoute accepte de nouvelles connexions jusqu'à ce que le traitement en attente (voir la fonction listen
) soit saturé, puis refuse les requêtes de connexion supplémentaires. Les événements onAccept
ne sont déclenchés que lorsque le socket est réactivé.
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
update()
chrome.sockets.tcpServer.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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et 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 au socket du serveur est établie.
Paramètres
-
rappel
function
Le paramètre
callback
se présente comme suit :(info: AcceptInfo)=>void
-
infos
-
onAcceptError
chrome.sockets.tcpServer.onAcceptError.addListener(
callback: function,
)
Événement déclenché lorsqu'une erreur réseau s'est produite alors que l'environnement d'exécution 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 que celui-ci n'est pas réactivé.
Paramètres
-
rappel
function
Le paramètre
callback
se présente comme suit :(info: AcceptErrorInfo)=>void
-
infos
-