Descripción
Usa la API de chrome.sockets.tcp
para enviar y recibir datos a través de la red con conexiones TCP. Esta API reemplaza la funcionalidad de TCP que se encontraba antes en la API de chrome.socket
.
Manifest
Tipos
CreateInfo
Propiedades
-
socketId
número
El ID del socket recién creado. Ten en cuenta que los IDs de socket creados a partir de esta API no son compatibles con los de otras APIs, como la API de
[
socket](../socket/)
obsoleta.
DnsQueryType
Preferencias de resolución de DNS. El valor predeterminado es any
y usa la configuración actual del SO que puede mostrar IPv4 o IPv6. ipv4
fuerza la IPv4 y ipv6
fuerza la IPv6.
Enum
“ipv4”
“ipv6”
ReceiveErrorInfo
Propiedades
-
resultCode
número
El código de resultado que muestra la llamada de red subyacente.
-
socketId
número
Es el identificador del socket.
ReceiveInfo
Propiedades
-
datos
ArrayBuffer
Los datos recibidos, con un tamaño máximo de
bufferSize
. -
socketId
número
Es el identificador del socket.
SecureOptions
Propiedades
-
tlsVersion
TLSVersionConstraints opcional
SendInfo
Propiedades
-
bytesSent
número opcional
El número de bytes enviados (si el resultado == 0)
-
resultCode
número
El código de resultado que muestra la llamada de red subyacente. Un valor negativo indica un error.
SocketInfo
Propiedades
-
bufferSize
número opcional
Es el tamaño del búfer que se usa para recibir los datos. Si no se especificó ningún tamaño del búfer de forma explícita, no se proporciona el valor.
-
Conectado
boolean
Marca que indica si el socket está conectado a un par remoto.
-
localAddress
cadena opcional
Si el socket subyacente está conectado, contiene su dirección IPv4/6 local.
-
localPort
número opcional
Si el socket subyacente está conectado, contiene su puerto local.
-
name
cadena opcional
Es la cadena definida por la aplicación asociada con el socket.
-
detenido
boolean
Marca que indica si un socket conectado impide que su par envíe más datos (consulta
setPaused
). -
peerAddress
cadena opcional
Si el socket subyacente está conectado, contiene la dirección IPv4/6 o de par.
-
peerPort
número opcional
Si el socket subyacente está conectado, contiene el puerto de par.
-
persistentes
boolean
Marca que indica si el socket se deja abierto cuando se suspende la aplicación (consulta
SocketProperties.persistent
). -
socketId
número
Es el identificador del socket.
SocketProperties
Propiedades
-
bufferSize
número opcional
Es el tamaño del búfer que se usa para recibir los datos. El valor predeterminado es 4,096.
-
name
cadena opcional
Una cadena definida por la aplicación asociada con el socket.
-
persistentes
booleano opcional
Marca que indica si el socket se deja abierto cuando se descarga la página del evento de la aplicación (consulta Administrar el ciclo de vida de la app). El valor predeterminado es "false". Cuando la aplicación se carga, cualquier socket que se abrió antes con Persistent=true se puede recuperar con
getSockets
.
TLSVersionConstraints
Propiedades
-
max
cadena opcional
-
min
cadena opcional
Las versiones mínima y máxima aceptables de TLS. Los valores admitidos son
tls1.2
otls1.3
.Ya no se admiten los valores
tls1
ytls1.1
. Simin
se establece en uno de estos valores, se fijará de forma silenciosa atls1.2
. Si establecesmax
en uno de esos valores o en cualquier otro valor no reconocido, se ignorará en silencio.
Métodos
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
)
Cierra el socket y libera la dirección o el puerto al que está vinculado. Cada socket creado debe cerrarse después de su uso. El ID del socket deja de ser válido apenas se llama a la función. Sin embargo, se garantiza que el socket solo se cerrará cuando se invoque la devolución de llamada.
Parámetros
-
socketId
número
Es el identificador del socket.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Devuelve
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
)
Conecta el socket a una máquina remota. Cuando la operación connect
se completa correctamente, se generan eventos onReceive
cuando se reciben datos del intercambio de tráfico. Si se produce un error de red mientras el entorno de ejecución recibe paquetes, se genera un evento onReceiveError
, en cuyo caso no se generará más evento onReceive
para este socket hasta que se llame al método resume
.
Parámetros
-
socketId
número
Es el identificador del socket.
-
peerAddress
cadena
Es la dirección de la máquina remota. Se admiten nombres de DNS, IPv4 e IPv6.
-
peerPort
número
El puerto de la máquina remota.
-
dnsQueryType
DnsQueryType opcional
Chrome 103 y versiones posterioresLa preferencia de resolución de la dirección.
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(result: number) => void
-
resultado
número
El código de resultado que muestra la llamada de red subyacente. Un valor negativo indica un error.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
)
Crea un socket TCP.
Parámetros
-
properties
SocketProperties opcional
Las propiedades del socket (opcional).
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:(createInfo: CreateInfo) => void
-
createInfo
El resultado de la creación del socket.
-
Devuelve
-
Promise<CreateInfo>
Chrome 121 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
)
Desconecta el socket.
Parámetros
-
socketId
número
Es el identificador del socket.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Devuelve
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
)
Recupera el estado del socket determinado.
Parámetros
-
socketId
número
Es el identificador del socket.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:(socketInfo: SocketInfo) => void
-
socketInfo
Objeto que contiene la información del socket.
-
Devuelve
-
Promise<SocketInfo>
Chrome 121 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
)
Recupera la lista de sockets actualmente abiertos que son propiedad de la aplicación.
Parámetros
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:(socketInfos: SocketInfo[]) => void
-
socketInfos
Arreglo de objetos que contiene información del socket.
-
Devuelve
-
Promise<SocketInfo[]>
Chrome 121 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
Inicia una conexión de cliente de TLS a través del socket del cliente TCP conectado.
Parámetros
-
socketId
número
El socket existente conectado que se usará.
-
Opciones
SecureOptions opcional
Restricciones y parámetros para la conexión TLS.
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(result: number) => void
-
resultado
número
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
)
Envía datos en el socket TCP determinado.
Parámetros
-
socketId
número
Es el identificador del socket.
-
datos
ArrayBuffer
Los datos que se enviarán.
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(sendInfo: SendInfo) => void
-
sendInfo
Resultado del método
send
.
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
Habilita o inhabilita la funcionalidad keep-alive para una conexión TCP.
Parámetros
-
socketId
número
Es el identificador del socket.
-
enable
boolean
Si es verdadero, habilita la funcionalidad keep-alive.
-
delay
número opcional
Establece el retraso en segundos entre el último paquete de datos recibido y el primer sondeo keepalive. El valor predeterminado es 0.
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(result: number) => void
-
resultado
número
El código de resultado que muestra la llamada de red subyacente. Un valor negativo indica un error.
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
Establece o borra TCP_NODELAY
para una conexión TCP. Se inhabilitará el algoritmo de Nagle cuando se configure TCP_NODELAY
.
Parámetros
-
socketId
número
Es el identificador del socket.
-
noDelay
boolean
Si es verdadero, inhabilita el algoritmo de Nagle.
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(result: number) => void
-
resultado
número
El código de resultado que muestra la llamada de red subyacente. Un valor negativo indica un error.
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Habilita o inhabilita la recepción de mensajes de la aplicación de intercambio de tráfico en la aplicación. El valor predeterminado es "false". Por lo general, una aplicación usa detener un socket para limitar los datos que envía su par. Cuando se pausa un socket, no se genera ningún evento onReceive
. Cuando se conecta un socket y se reanuda, los eventos onReceive
se vuelven a generar cuando se reciben los mensajes.
Parámetros
-
socketId
número
-
detenido
boolean
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Devuelve
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Actualiza las propiedades del socket.
Parámetros
-
socketId
número
Es el identificador del socket.
-
properties
Las propiedades que se actualizarán.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Devuelve
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.
Eventos
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
Evento generado cuando se reciben datos de un socket determinado
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(info: ReceiveInfo) => void
-
info
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Evento que se generó cuando se produjo un error de red mientras el entorno de ejecución estaba esperando datos en la dirección del socket y el puerto. Una vez que se genera este evento, el socket se establece en paused
y no se generan más eventos onReceive
para este socket.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(info: ReceiveErrorInfo) => void
-
info
-