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 anteriormente encontrada na API chrome.socket.

Manifesto

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

"sockets"

Tipos

CreateInfo

Propriedades

  • socketId

    number

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

DnsQueryType

Chrome 103 ou mais recente

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

"qualquer"

"ipv4"

"ipv6"

ReceiveErrorInfo

Propriedades

  • resultCode

    number

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

  • socketId

    number

    O identificador do soquete.

ReceiveInfo

Propriedades

  • dados

    Buffer de matriz

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

  • socketId

    number

    O identificador do soquete.

SecureOptions

Propriedades

SendInfo

Propriedades

  • bytesSent

    número opcional

    O número de bytes enviados (se o resultado for == 0)

  • resultCode

    number

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

SocketInfo

Propriedades

  • bufferSize

    número opcional

    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

    Sinalizador que indica se o soquete está conectado a um peer remoto.

  • localAddress

    string opcional

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

  • localPort

    número opcional

    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 peering envie mais dados (consulte setPaused).

  • peerAddress

    string opcional

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

  • peerPort

    número opcional

    Se o soquete subjacente estiver conectado, contém a porta de mesmo nível.

  • persistente

    booleano

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

  • socketId

    number

    O identificador do soquete.

SocketProperties

Propriedades

  • bufferSize

    número opcional

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

  • nome

    string opcional

    Uma string definida pelo aplicativo associada ao soquete.

  • persistente

    booleano opcional

    Sinalização que indica se o soquete fica aberto quando a página de eventos do aplicativo é descarregada (consulte Gerenciar o ciclo de vida do app). O valor padrão é "falso". 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 compatíveis. Se min for definido como um desses valores, ele será silenciosamente restrito a 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,
)

Fecha o soquete e libera o endereço/porta a que ele está vinculado. Cada soquete criado precisa ser fechado após o uso. O ID do soquete não será mais válido assim que a função for chamada. No entanto, o soquete será fechado somente quando o callback for invocado.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promessa<void>

    Chrome 121 ou versões mais recentes

    As promessas só têm suporte no Manifesto 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,
)

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

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • peerAddress

    string

    O endereço da máquina remota. O nome DNS e os formatos IPv4 e IPv6 são compatíveis.

  • peerPort

    number

    A porta da máquina remota.

  • dnsQueryType

    DnsQueryType opcional

    Chrome 103 ou mais recente

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

  • callback

    função

    O parâmetro callback tem esta aparência:

    (result: number) => void

    • resultado

      number

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

create()

Promessa
chrome.sockets.tcp.create(
  properties?: SocketProperties,
  callback?: function,
)

Cria um soquete TCP.

Parâmetros

  • properties

    Propriedades do soquete (opcional).

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (createInfo: CreateInfo) => void

    • createInfo

      Resultado da criação do soquete.

Retorna

  • Promise&lt;CreateInfo&gt;

    Chrome 121 ou versões mais recentes

    As promessas só têm suporte no Manifesto V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

disconnect()

Promessa
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)

Desconecta o soquete.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promessa<void>

    Chrome 121 ou versões mais recentes

    As promessas só têm suporte no Manifesto V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getInfo()

Promessa
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)

Recupera o estado do soquete em questão.

Parâmetros

  • socketId

    number

    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&lt;SocketInfo&gt;

    Chrome 121 ou versões mais recentes

    As promessas só têm suporte no Manifesto V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getSockets()

Promessa
chrome.sockets.tcp.getSockets(
  callback?: function,
)

Recupera a lista de soquetes abertos no momento de propriedade do aplicativo.

Parâmetros

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

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

Retorna

  • Promise&lt;SocketInfo[]&gt;

    Chrome 121 ou versões mais recentes

    As promessas só têm suporte no Manifesto V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

secure()

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

Inicie uma conexão do cliente TLS no soquete do cliente TCP conectado.

Parâmetros

  • socketId

    number

    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 tem esta aparência:

    (result: number) => void

    • resultado

      number

send()

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

Envia dados no soquete TCP especificado.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • dados

    Buffer de matriz

    Os dados a serem enviados.

  • callback

    função

    O parâmetro callback tem esta aparência:

    (sendInfo: SendInfo) => void

    • sendInfo

      Resultado do método send.

setKeepAlive()

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

Ativa ou desativa a funcionalidade de sinal de atividade para uma conexão TCP.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • ativar

    booleano

    Se verdadeiro, ative a funcionalidade de sinal de atividade.

  • delay

    número opcional

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

  • callback

    função

    O parâmetro callback tem esta aparência:

    (result: number) => void

    • resultado

      number

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

setNoDelay()

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

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

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • noDelay

    booleano

    Se for verdadeiro, o algoritmo de Nagle será desativado.

  • callback

    função

    O parâmetro callback tem esta aparência:

    (result: number) => void

    • resultado

      number

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

setPaused()

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

Ativa ou desativa o recebimento de mensagens do terminal pelo aplicativo. O valor padrão é "false". Pausar um soquete normalmente é usada por um aplicativo para limitar os dados enviados pelo seu 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

    number

  • pausado

    booleano

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promessa<void>

    Chrome 121 ou versões mais recentes

    As promessas só têm suporte no Manifesto V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

update()

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

Atualiza as propriedades do soquete.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • properties

    As propriedades a serem atualizadas.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promessa<void>

    Chrome 121 ou versões mais recentes

    As promessas só têm suporte no Manifesto 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 forem recebidos para um determinado soquete.

Parâmetros

  • callback

    função

    O parâmetro callback tem esta aparência:

    (info: ReceiveInfo) => void

onReceiveError

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

Evento gerado quando ocorreu um erro de rede enquanto o ambiente de execução aguardava dados na porta e no endereço do soquete. Quando esse evento for gerado, o soquete será definido como paused e nenhum outro evento onReceive será gerado para ele.

Parâmetros