Descrizione
Utilizza l'API chrome.sockets.tcpServer
per creare applicazioni server mediante connessioni TCP. Questa API ha la precedenza sulla funzionalità TCP precedentemente trovata nell'API chrome.socket
.
Manifest
Tipi
AcceptErrorInfo
Proprietà
-
resultCode
numero
Il codice risultato restituito dalla chiamata di rete sottostante.
-
socketId
numero
L'identificatore del socket del server.
AcceptInfo
Proprietà
-
clientSocketId
numero
L'identificatore socket client, ovvero l'identificatore socket della connessione appena stabilita. Questo identificatore socket deve essere utilizzato solo con le funzioni dello spazio dei nomi
chrome.sockets.tcp
. Tieni presente che il socket client è inizialmente in pausa e per iniziare a ricevere i dati deve essere esplicitamente riattivato dall'applicazione. -
socketId
numero
L'identificatore del socket del server.
CreateInfo
Proprietà
-
socketId
numero
L'ID del socket del server appena creato. Tieni presente che gli ID socket creati da questa API non sono compatibili con gli ID socket creati da altre API, ad esempio l'API
[
socket](../socket/)
deprecata.
SocketInfo
Proprietà
-
localAddress
stringa facoltativo
Se il socket è in ascolto, contiene il suo indirizzo IPv4/6 locale.
-
localPort
numero facoltativo
Se il socket è in ascolto, contiene la porta locale.
-
nome
stringa facoltativo
Stringa definita dall'applicazione associata al socket.
-
in pausa
boolean
Flag che indica se le richieste di connessione su un socket di ascolto vengono inviate tramite l'evento
onAccept
o sono in coda nel backlog della coda di ascolto. Leggi isetPaused
. Il valore predefinito è "false". -
permanente
boolean
Flag che indica se il socket rimane aperto quando viene scaricata la pagina degli eventi dell'applicazione (vedi
SocketProperties.persistent
). Il valore predefinito è "false". -
socketId
numero
L'identificatore del socket.
SocketProperties
Proprietà
-
nome
stringa facoltativo
Una stringa definita dall'applicazione associata al socket.
-
permanente
booleano facoltativo
Flag che indica se il socket rimane aperto quando viene scaricata la pagina dell'evento dell'applicazione (consulta Gestione del ciclo di vita dell'app). Il valore predefinito è "false". Una volta caricata l'applicazione, tutti i socket aperti in precedenza con permanente=true possono essere recuperati con
getSockets
.
Metodi
close()
chrome.sockets.tcpServer.close(
socketId: number,
callback?: function,
)
Disconnette e distrugge il socket. Ogni socket creato deve essere chiuso dopo l'utilizzo. L'ID socket non è più valido non appena viene richiamata la funzione. Tuttavia, il socket verrà chiuso soltanto quando viene richiamato il callback.
Parametri
-
socketId
numero
L'identificatore del socket.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Ritorni
-
Promise<void>
Chrome 121 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
)
Crea un socket del server TCP.
Parametri
-
proprietà
SocketProperties facoltativo
Le proprietà del socket (facoltativo).
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(createInfo: CreateInfo) => void
-
createInfo
Il risultato della creazione del socket.
-
Ritorni
-
Promise<CreateInfo>
Chrome 121 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
)
Disconnette il socket di ascolto, ovvero smette di accettare nuove connessioni e rilascia l'indirizzo/la porta a cui è associato il socket. L'identificatore socket rimane valido, ad esempio può essere utilizzato con listen
per accettare connessioni su una nuova porta e un nuovo indirizzo.
Parametri
-
socketId
numero
L'identificatore del socket.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Ritorni
-
Promise<void>
Chrome 121 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
getInfo()
chrome.sockets.tcpServer.getInfo(
socketId: number,
callback?: function,
)
Recupera lo stato del socket specificato.
Parametri
-
socketId
numero
L'identificatore del socket.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(socketInfo: SocketInfo) => void
-
socketInfo
Oggetto contenente le informazioni socket.
-
Ritorni
-
Promise<SocketInfo>
Chrome 121 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
getSockets()
chrome.sockets.tcpServer.getSockets(
callback?: function,
)
Recupera l'elenco dei socket attualmente aperti di proprietà dell'applicazione.
Parametri
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(socketInfos: SocketInfo[]) => void
-
socketInfos
Array dell'oggetto contenente informazioni socket.
-
Ritorni
-
Promise<SocketInfo[]>
Chrome 121 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
listen()
chrome.sockets.tcpServer.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
)
Ascolta le connessioni sulla porta e sull'indirizzo specificati. Se la porta o l'indirizzo sono in uso, il callback indica un errore.
Parametri
-
socketId
numero
L'identificatore del socket.
-
indirizzo
stringa
L'indirizzo della macchina locale.
-
porta
numero
La porta della macchina locale. Se il criterio viene impostato su
0
, viene scelta una porta libera in modo dinamico. Puoi trovare la porta allocata dinamicamente chiamandogetInfo
. -
arretrato
numero facoltativo
Lunghezza della coda di ascolto del socket. Il valore predefinito dipende dal sistema operativo (SOMAXCONN), il che garantisce una lunghezza della coda ragionevole per la maggior parte delle applicazioni.
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(result: number) => void
-
risultato
numero
Il codice risultato restituito dalla chiamata di rete sottostante. Un valore negativo indica un errore.
-
setPaused()
chrome.sockets.tcpServer.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Consente di attivare o disattivare l'accettazione di nuove connessioni da parte di una presa di ascolto. Quando è in pausa, un socket di ascolto accetta nuove connessioni fino a quando il backlog (vedi la funzione listen
) è pieno, quindi rifiuta le richieste di connessione aggiuntive. Gli eventi onAccept
vengono generati solo quando il socket viene riattivato.
Parametri
-
socketId
numero
-
in pausa
boolean
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Ritorni
-
Promise<void>
Chrome 121 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
update()
chrome.sockets.tcpServer.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Aggiorna le proprietà del socket.
Parametri
-
socketId
numero
L'identificatore del socket.
-
proprietà
Le proprietà da aggiornare.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Ritorni
-
Promise<void>
Chrome 121 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
Eventi
onAccept
chrome.sockets.tcpServer.onAccept.addListener(
callback: function,
)
Evento generato quando è stata stabilita una connessione al socket del server.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(info: AcceptInfo) => void
-
informazioni
-
onAcceptError
chrome.sockets.tcpServer.onAcceptError.addListener(
callback: function,
)
Evento generato quando si è verificato un errore di rete mentre il runtime era in attesa di nuove connessioni all'indirizzo e alla porta socket. Una volta generato questo evento, il socket viene impostato su paused
e non vengono generati altri eventi onAccept
per questo socket fino al suo ripristino.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(info: AcceptErrorInfo) => void
-
informazioni
-