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
number
O ID do soquete recém-criado. Os IDs de soquete criados com base nessa API não são compatíveis com aqueles criados com outras APIs, como a API
[
socket](../socket/)
, que foi descontinuada.
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.
Tipo enumerado
"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
ArrayBuffer
Os dados recebidos, com um tamanho máximo de
bufferSize
. -
socketId
number
O identificador do soquete.
SecureOptions
Propriedades
-
tlsVersion
TLSVersionConstraints opcional
SendInfo
Propriedades
-
bytesSent
número opcional
O número de bytes enviados (if result == 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
boolean
Sinalização que indica se o soquete está conectado a um peering remoto.
-
localAddress
string opcional
Se o soquete subjacente estiver conectado, ele conterá o endereço IPv4/6 local.
-
localPort
número opcional
Se o soquete subjacente estiver conectado, ele conterá a porta local dele.
-
name
string opcional
String definida pelo aplicativo associada ao soquete.
-
pausado
boolean
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, ele conterá o endereço IPv4/6 de peering.
-
peerPort
número opcional
Se o soquete subjacente estiver conectado, ele conterá a porta do terminal.
-
permanentes
boolean
Sinalização que indica se o soquete foi deixado em aberto quando o aplicativo foi 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 é 4.096.
-
name
string opcional
Uma string definida pelo aplicativo associada ao soquete.
-
permanentes
booleano opcional
Sinalização que indica se o soquete foi deixado em 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
-
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 compatíveis. Semin
estiver definido como um desses valores, ele será reduzido de forma silenciosa atls1.2
. Semax
estiver 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,
)
Fecha o soquete e libera o endereço/porta a que o soquete está vinculado. Cada soquete criado deve ser fechado após o uso. O ID do soquete deixa de ser válido assim que a função é chamada. No entanto, há a garantia de que o soquete será fechado somente quando o callback for invocado.
Parâmetros
-
socketId
number
O identificador do soquete.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 121 ou mais recentePromessas são compatíveis apenas 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,
)
Conecta o soquete a uma máquina remota. Quando a operação connect
for concluída, eventos onReceive
serão gerados quando os dados forem recebidos do peering. Se ocorrer um erro de rede enquanto o ambiente de execução estiver recebendo pacotes, um evento onReceiveError
será gerado. Nesse momento, nenhum evento onReceive
será gerado para esse 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. Há suporte para o nome DNS e os formatos IPv4 e IPv6.
-
peerPort
number
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
number
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,
)
Cria um soquete TCP.
Parâmetros
-
properties
SocketProperties opcional
As propriedades do soquete (opcional).
-
callback
função optional
O parâmetro
callback
tem esta aparência:(createInfo: CreateInfo) => void
-
createInfo
O resultado da criação do soquete.
-
Retorna
-
Promise<CreateInfo>
Chrome 121 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
)
Desconecta o soquete.
Parâmetros
-
socketId
number
O identificador do soquete.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 121 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
)
Recupera o estado do soquete especificado.
Parâmetros
-
socketId
number
O identificador do soquete.
-
callback
função optional
O parâmetro
callback
tem esta aparência:(socketInfo: SocketInfo) => void
-
socketInfo
Objeto contendo as informações do soquete.
-
Retorna
-
Promise<SocketInfo>
Chrome 121 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
)
Recupera a lista de soquetes abertos no momento pertencentes ao aplicativo.
Parâmetros
-
callback
função optional
O parâmetro
callback
tem esta aparência:(socketInfos: SocketInfo[]) => void
-
socketInfos
Matriz de objeto que contém informações sobre o soquete.
-
Retorna
-
Promise<SocketInfo[]>
Chrome 121 ou mais recentePromessas são compatíveis apenas 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,
)
Inicie uma conexão de 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
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,
)
Ativa ou desativa a funcionalidade de sinal de atividade para uma conexão TCP.
Parâmetros
-
socketId
number
O identificador do soquete.
-
enable
boolean
Se verdadeiro, ativar a funcionalidade keep-alive.
-
delay
número opcional
Defina os segundos de atraso 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
boolean
Se verdadeiro, desativa o algoritmo do Nagle.
-
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()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Ativa ou desativa o recebimento de mensagens do aplicativo pelo peering. O valor padrão é "false". Pausar um soquete normalmente é usado por um aplicativo para limitar os dados enviados pelo peering. 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
boolean
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 121 ou mais recentePromessas são compatíveis apenas 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,
)
Atualiza as propriedades do soquete.
Parâmetros
-
socketId
number
O identificador do soquete.
-
properties
Propriedades a serem atualizadas.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 121 ou mais recentePromessas são compatíveis apenas 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 em 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 ocorre um erro de rede enquanto o tempo de execução aguarda os dados no endereço e na porta do soquete. Quando esse evento é gerado, o soquete é definido como paused
, e nenhum evento onReceive
é gerado para ele.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(info: ReceiveErrorInfo) => void
-
informações
-