chrome.sockets.tcp

Descrição

Use a API chrome.sockets.tcp para enviar e receber dados pela rede usando conexões TCP. Essa API substitui a funcionalidade TCP que antes era encontrada na API chrome.socket.

Manifesto

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

"sockets"

Tipos

CreateInfo

Propriedades

  • socketId

    número

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

DnsQueryType

Chrome 103+

Preferências de resolução de DNS. O padrão é any e usa a configuração atual do SO, que pode retornar IPv4 ou IPv6. ipv4 força o IPv4, e ipv6 força o IPv6.

Enumeração

"any"

"ipv4"

"ipv6"

ReceiveErrorInfo

Propriedades

  • resultCode

    número

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

  • socketId

    número

    O identificador do soquete.

ReceiveInfo

Propriedades

  • dados

    ArrayBuffer

    Os dados recebidos, com um tamanho máximo de bufferSize.

  • socketId

    número

    O identificador do soquete.

SecureOptions

Propriedades

SendInfo

Propriedades

  • bytesSent

    número optional

    O número de bytes enviados (se result == 0)

  • resultCode

    número

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

SocketInfo

Propriedades

  • bufferSize

    número optional

    O tamanho do buffer usado para receber dados. Se nenhum tamanho de buffer tiver sido especificado explicitamente, o valor não será fornecido.

  • conectado

    booleano

    Sinalização que indica se o soquete está conectado a um par remoto.

  • localAddress

    string opcional

    Se o soquete subjacente estiver conectado, contém o endereço IPv4/6 local.

  • localPort

    número optional

    Se o soquete subjacente estiver conectado, contém a porta local dele.

  • nome

    string opcional

    String definida pelo aplicativo associada ao soquete.

  • pausado

    booleano

    Sinalização que indica se um soquete conectado impede que o par envie mais dados (consulte setPaused).

  • peerAddress

    string opcional

    Se o soquete subjacente estiver conectado, contém o endereço IPv4/6 do peering.

  • peerPort

    número optional

    Se o soquete subjacente estiver conectado, contém a porta de peering.

  • permanente

    booleano

    Sinalização que indica se o soquete é deixado aberto quando o aplicativo é suspenso (consulte SocketProperties.persistent).

  • socketId

    número

    O identificador do soquete.

SocketProperties

Propriedades

  • bufferSize

    número optional

    O tamanho do buffer usado para receber dados. O valor padrão é 4096.

  • nome

    string opcional

    Uma string definida pelo aplicativo associada ao soquete.

  • permanente

    booleano opcional

    Sinalização que indica se o soquete é deixado aberto quando a página de evento do aplicativo é descarregada (consulte Gerenciar o ciclo de vida do app). O valor padrão é "false". Quando o aplicativo é carregado, todos os soquetes abertos anteriormente com persistent=true podem ser buscados com getSockets.

TLSVersionConstraints

Propriedades

  • max

    string opcional

  • min

    string opcional

    As versões mínima e máxima aceitáveis do TLS. Os valores aceitos são tls1.2 ou tls1.3.

    Os valores tls1 e tls1.1 não são mais aceitos. Se min for definido como um desses valores, ele será fixado silenciosamente em tls1.2. Se max for definido como um desses valores ou qualquer outro valor não reconhecido, ele será ignorado silenciosamente.

Métodos

close()

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

Fecha o soquete e libera o endereço/porta ao qual o soquete está vinculado. 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ó é fechado quando o callback é invocado.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • callback

    função optional

    O parâmetro callback é semelhante a:

    () => void

Retorna

  • Promessa<void>

    Chrome 121+

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

connect()

chrome.sockets.tcp.connect(
  socketId: number,
  peerAddress: string,
  peerPort: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)
: void

Conecta o soquete a uma máquina remota. Quando a operação connect é concluída, os eventos onReceive são gerados quando os dados são recebidos do par. Se ocorrer um erro de rede enquanto o ambiente de execução estiver recebendo pacotes, um evento onReceiveError será gerado. Nesse momento, nenhum outro evento onReceive será gerado para esse soquete até que o método resume seja chamado.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • peerAddress

    string

    O endereço da máquina remota. Os formatos de nome DNS, IPv4 e IPv6 são aceitos.

  • peerPort

    número

    A porta da máquina remota.

  • dnsQueryType

    DnsQueryType opcional

    Chrome 103+

    A preferência de resolução de endereço.

  • callback

    função

    O parâmetro callback é semelhante a:

    (result: number) => void

    • resultado

      número

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

create()

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

Cria um soquete TCP.

Parâmetros

  • propriedades

    As propriedades do soquete (opcional).

  • callback

    função optional

    O parâmetro callback é semelhante a:

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

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

Desconecta o soquete.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • callback

    função optional

    O parâmetro callback é semelhante a:

    () => void

Retorna

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

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

Recupera o estado do soquete fornecido.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • callback

    função optional

    O parâmetro callback é semelhante a:

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

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

Recupera a lista de soquetes abertos no momento que pertencem ao aplicativo.

Parâmetros

  • callback

    função optional

    O parâmetro callback é semelhante a:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Matriz de objeto 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.

secure()

chrome.sockets.tcp.secure(
  socketId: number,
  options?: SecureOptions,
  callback: function,
)
: void

Inicie uma conexão de cliente TLS pelo socket de cliente TCP conectado.

Parâmetros

  • socketId

    número

    O soquete conectado atual a ser usado.

  • opções

    SecureOptions opcional

    Restrições e parâmetros para a conexão TLS.

  • callback

    função

    O parâmetro callback é semelhante a:

    (result: number) => void

    • resultado

      número

send()

chrome.sockets.tcp.send(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)
: void

Envia dados no soquete TCP fornecido.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • dados

    ArrayBuffer

    Os dados a serem enviados.

  • callback

    função

    O parâmetro callback é semelhante a:

    (sendInfo: SendInfo) => void

    • sendInfo

      Resultado do método send.

setKeepAlive()

chrome.sockets.tcp.setKeepAlive(
  socketId: number,
  enable: boolean,
  delay?: number,
  callback: function,
)
: void

Ativa ou desativa a funcionalidade de keep-alive para uma conexão TCP.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • ativar

    booleano

    Se verdadeiro, ativa a funcionalidade de keep-alive.

  • delay

    número optional

    Defina os segundos de atraso entre o último pacote de dados recebido e a primeira sondagem de keepalive. O padrão é 0.

  • callback

    função

    O parâmetro callback é semelhante a:

    (result: number) => void

    • resultado

      número

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

setNoDelay()

chrome.sockets.tcp.setNoDelay(
  socketId: number,
  noDelay: boolean,
  callback: function,
)
: void

Define ou limpa TCP_NODELAY para uma conexão TCP. O algoritmo de Nagle será desativado quando TCP_NODELAY for definido.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • noDelay

    booleano

    Se verdadeiro, desativa o algoritmo de Nagle.

  • callback

    função

    O parâmetro callback é semelhante a:

    (result: number) => void

    • resultado

      número

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

setPaused()

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

Ativa ou desativa o recebimento de mensagens do app de pareamento. O valor padrão é "false". A pausa de um soquete normalmente é usada por um aplicativo para limitar os dados enviados pelo par. Quando um soquete é pausado, nenhum evento onReceive é gerado. Quando um soquete é conectado e retomado, os eventos onReceive são gerados novamente quando as mensagens são recebidas.

Parâmetros

  • socketId

    número

  • pausado

    booleano

  • callback

    função optional

    O parâmetro callback é semelhante a:

    () => void

Retorna

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

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

Atualiza as propriedades do soquete.

Parâmetros

  • socketId

    número

    O identificador do soquete.

  • propriedades

    As propriedades a serem atualizadas.

  • callback

    função optional

    O parâmetro callback é semelhante a:

    () => void

Retorna

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

onReceive

chrome.sockets.tcp.onReceive.addListener(
  callback: function,
)

Evento gerado quando os dados são recebidos para um determinado soquete.

Parâmetros

  • callback

    função

    O parâmetro callback é semelhante a:

    (info: ReceiveInfo) => void

onReceiveError

chrome.sockets.tcp.onReceiveError.addListener(
  callback: function,
)

Evento gerado quando ocorre um erro de rede enquanto o ambiente de execução aguarda dados no endereço e na porta do soquete. Depois que esse evento é gerado, o soquete é definido como paused e nenhum outro evento onReceive é gerado para esse soquete.

Parâmetros