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 encontrada anteriormente na API chrome.socket
.
Manifesto
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 criados com outras APIs, como a API
[
socket](../socket/)
obsoleta.
DnsQueryType
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 subjacente.
-
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
-
tlsVersion
TLSVersionConstraints opcional
SendInfo
Propriedades
-
bytesSent
number optional
O número de bytes enviados (se result == 0)
-
resultCode
número
O código de resultado retornado da chamada de rede subjacente. Um valor negativo indica um erro.
SocketInfo
Propriedades
-
bufferSize
number 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
Flag que indica se o soquete está conectado a um peer remoto.
-
localAddress
string opcional
Se o soquete subjacente estiver conectado, vai conter o endereço IPv4/6 local.
-
localPort
number optional
Se o soquete subjacente estiver conectado, vai conter a porta local.
-
nome
string opcional
String definida pelo aplicativo associada ao soquete.
-
pausado
booleano
Flag que indica se um soquete conectado impede que o peer envie mais dados (consulte
setPaused
). -
peerAddress
string opcional
Se o soquete subjacente estiver conectado, vai conter o endereço do peer/ IPv4/6.
-
peerPort
number optional
Se o soquete subjacente estiver conectado, vai conter a porta do peer.
-
persistente
booleano
Flag que indica se o soquete fica aberto quando o aplicativo é suspenso (consulte
SocketProperties.persistent
). -
socketId
número
O identificador do soquete.
SocketProperties
Propriedades
-
bufferSize
number 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.
-
persistente
booleano opcional
Flag 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 é "false". Quando o aplicativo é carregado, todos os sockets abertos anteriormente com persistent=true podem ser buscados com
getSockets
.
TLSVersionConstraints
Propriedades
-
máx.
string opcional
-
min
string opcional
As versões mínima e máxima aceitáveis do TLS. Os valores aceitos são
tls1.2
outls1.3
.Os valores
tls1
etls1.1
não são mais aceitos. Semin
for definido como um desses valores, ele será ajustado silenciosamente paratls1.2
. Semax
for definido como um desses valores ou qualquer outro valor não reconhecido, ele será ignorado silenciosamente.
Métodos
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
): Promise<void>
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 é 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.
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 dispositivo semelhante. Se ocorrer um erro de rede enquanto o tempo 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 ou mais recenteA preferência de resolução de endereço.
-
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.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Cria um soquete TCP.
Parâmetros
-
properties
SocketProperties opcional
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()
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 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()
chrome.sockets.tcp.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()
chrome.sockets.tcp.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.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
): void
Inicie uma conexão de cliente TLS no soquete 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
tem esta aparência:(result: number) => void
-
resultado
número
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
): void
Envia dados no soquete TCP especificado.
Parâmetros
-
socketId
número
O identificador do soquete.
-
dados
ArrayBuffer
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,
): void
Ativa ou desativa a funcionalidade keep-alive para uma conexão TCP.
Parâmetros
-
socketId
número
O identificador do soquete.
-
ativar
booleano
Se verdadeiro, ativa a funcionalidade de manutenção de atividade.
-
delay
number optional
Defina os segundos de atraso entre o último pacote de dados recebido e a primeira sondagem keepalive. O padrão é 0.
-
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.
-
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
estiver definido.
Parâmetros
-
socketId
número
O identificador do soquete.
-
noDelay
booleano
Se for verdadeiro, desativa o algoritmo de Nagle.
-
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()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Ativa ou desativa o recebimento de mensagens do app do mesmo nível. O valor padrão é "false". A pausa de um soquete é usada normalmente por um aplicativo para limitar os dados enviados pelo peer. 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 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()
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.
-
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
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
tem esta aparência:(info: ReceiveInfo) => void
-
informações
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Evento gerado quando um erro de rede ocorreu enquanto o ambiente de execução aguardava 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 ele.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(info: ReceiveErrorInfo) => void
-
informações
-