chrome.sockets.tcpServer

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

Per poter utilizzare questa API, le seguenti chiavi devono essere dichiarate nel manifest.

"sockets"

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 i setPaused. 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()

Promessa
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 successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

create()

Promessa
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 successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

disconnect()

Promessa
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 successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

getInfo()

Promessa
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 successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

getSockets()

Promessa
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 successive

    Le 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 chiamando getInfo.

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

Promessa
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 successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

update()

Promessa
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 successive

    Le 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

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