chrome.sockets.tcpServer

Descrição

Use a API chrome.sockets.tcpServer para criar aplicativos de servidor usando conexões TCP. Essa API substitui a funcionalidade TCP encontrada anteriormente na API chrome.socket.

Manifesto

As chaves a seguir precisam ser declaradas no manifesto para usar essa API.

"sockets"

Tipos

AcceptErrorInfo

Propriedades

  • resultCode

    número

    O código de resultado retornado da chamada de rede subjacente.

  • socketId

    número

    O identificador do soquete do servidor.

AcceptInfo

Propriedades

  • clientSocketId

    número

    O identificador de soquete do cliente, ou seja, o identificador de soquete da conexão recém-estabelecida. Esse identificador de soquete só deve ser usado com funções do namespace chrome.sockets.tcp. O soquete do cliente é pausado inicialmente e precisa ser explicitamente retomado pelo aplicativo para começar a receber dados.

  • socketId

    número

    O identificador do soquete do servidor.

CreateInfo

Propriedades

  • socketId

    número

    O ID do soquete do servidor recém-criado. Os IDs de soquete criados com essa API não são compatíveis com os IDs criados com outras APIs, como a API [socket](../socket/) obsoleta.

SocketInfo

Propriedades

  • localAddress

    string opcional

    Se o soquete estiver escutando, ele vai conter o endereço IPv4/6 local.

  • localPort

    number optional

    Se o soquete estiver escutando, vai conter a porta local.

  • nome

    string opcional

    String definida pelo aplicativo associada ao soquete.

  • pausado

    booleano

    Flag que indica se as solicitações de conexão em um soquete de escuta são enviadas pelo evento onAccept ou enfileiradas no backlog da fila de escuta. Consulte os setPaused. O valor padrão é "false".

  • persistente

    booleano

    Flag que indica se o soquete permanece aberto quando a página de evento do aplicativo é descarregada (consulte SocketProperties.persistent). O valor padrão é "false".

  • socketId

    número

    O identificador do soquete.

SocketProperties

Propriedades

  • nome

    string opcional

    Uma string definida pelo aplicativo associada ao soquete.

  • persistente

    booleano opcional

    Flag que indica se o soquete permanece aberto quando a página de eventos do aplicativo é descarregada. Consulte Gerenciar o ciclo de vida do app. O valor padrão é "false". Quando o aplicativo é carregado, todos os sockets abertos anteriormente com persistent=true podem ser buscados com getSockets.

Métodos

close()

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

Desconecta e destrói o soquete. Cada soquete criado precisa ser fechado após o uso. O ID do soquete não é mais válido assim que a função é chamada. No entanto, o soquete só será fechado quando o callback for invocado.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 121+

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

create()

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

Cria um soquete de servidor TCP.

Parâmetros

  • properties

    As propriedades do soquete (opcional).

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (createInfo: CreateInfo) => void

    • createInfo

      O resultado da criação do soquete.

Retorna

  • Promise<CreateInfo>

    Chrome 121+

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

disconnect()

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

Desconecta o soquete de escuta, ou seja, para de aceitar novas conexões e libera o endereço/porta a que o soquete está vinculado. O identificador de soquete permanece válido. Por exemplo, ele pode ser usado com listen para aceitar conexões em uma nova porta e endereço.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 121+

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getInfo()

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

Recupera o estado do soquete especificado.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Objeto que contém as informações do soquete.

Retorna

  • Promise<SocketInfo>

    Chrome 121+

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getSockets()

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

Recupera a lista de sockets abertos no momento pertencentes ao aplicativo.

Parâmetros

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Matriz de objetos que contém informações de soquete.

Retorna

  • Promise<SocketInfo[]>

    Chrome 121+

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

listen()

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

Detecta conexões na porta e no endereço especificados. Se a porta/endereço estiver em uso, o callback vai indicar uma falha.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • endereço

    string

    O endereço da máquina local.

  • porta

    número

    A porta da máquina local. Quando definido como 0, uma porta livre é escolhida dinamicamente. A porta alocada dinamicamente pode ser encontrada chamando getInfo.

  • backlog

    number optional

    Comprimento da fila de espera do soquete. O valor padrão depende do sistema operacional (SOMAXCONN), que garante um comprimento de fila razoável para a maioria dos aplicativos.

  • callback

    função

    O parâmetro callback tem esta aparência:

    (result: number) => void

    • resultado

      número

      O código de resultado retornado da chamada de rede subjacente. Um valor negativo indica um erro.

setPaused()

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

Ativa ou desativa um soquete de escuta para aceitar novas conexões. Quando pausado, um soquete de escuta aceita novas conexões até que seu backlog (consulte a função listen) esteja cheio e, em seguida, rejeita solicitações de conexão adicionais. Os eventos onAccept são gerados apenas quando o soquete é retomado.

Parâmetros

  • socketId

    número

  • pausado

    booleano

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 121+

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

update()

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

Atualiza as propriedades do soquete.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • properties

    As propriedades a serem atualizadas.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 121+

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

Eventos

onAccept

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

Evento gerado quando uma conexão é feita com o soquete do servidor.

Parâmetros

  • callback

    função

    O parâmetro callback tem esta aparência:

    (info: AcceptInfo) => void

onAcceptError

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

Evento gerado quando ocorre um erro de rede enquanto o tempo de execução aguarda novas conexões no endereço e na porta do soquete. Depois que esse evento é gerado, o soquete é definido como paused, e nenhum outro evento onAccept é gerado para ele até que seja retomado.

Parâmetros