Descripción
Usa la API de chrome.sockets.tcp
para enviar y recibir datos a través de la red mediante conexiones TCP. Esta API sustituye la funcionalidad de TCP que se encontraba anteriormente en la API de chrome.socket
.
Manifiesto
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 IDs de socket creados a partir 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 del SO actual, que puede mostrar IPv4 o IPv6. ipv4
fuerza IPv4 y ipv6
fuerza IPv6.
Enum
“cualquiera”
"ipv4"
"ipv6"
ReceiveErrorInfo
Propiedades
-
resultCode
número
El código de resultado que muestra la llamada de red subyacente.
-
socketId
número
El identificador del socket.
ReceiveInfo
Propiedades
-
datos
ArrayBuffer
Los datos recibidos, con un tamaño máximo de
bufferSize
. -
socketId
número
El identificador del socket.
SecureOptions
Propiedades
-
tlsVersion
TLSVersionConstraints opcional
SendInfo
Propiedades
-
bytesSent
número opcional
La cantidad 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
El tamaño del búfer que se usa para recibir 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
string 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.
-
nombre
string opcional
Cadena definida por la aplicación asociada al socket.
-
detenido
boolean
Marca que indica si un socket conectado impide que su par envíe más datos (consulta
setPaused
). -
peerAddress
string opcional
Si el socket subyacente está conectado, contiene la dirección IPv4/6 de intercambio de tráfico.
-
peerPort
número opcional
Si el socket subyacente está conectado, contiene el puerto de intercambio de tráfico.
-
persistentes
boolean
Marca que indica si el socket se deja abierto cuando se suspende la aplicación (consulta
SocketProperties.persistent
). -
socketId
número
El identificador del socket.
SocketProperties
Propiedades
-
bufferSize
número opcional
El tamaño del búfer que se usa para recibir datos. El valor predeterminado es 4096.
-
nombre
string opcional
Una cadena definida por la aplicación asociada al 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 Administra el ciclo de vida de la app). El valor predeterminado es "false". Cuando se carga la aplicación, cualquier socket que se abrió previamente con Persistent=true se puede recuperar con
getSockets
.
TLSVersionConstraints
Propiedades
-
máx.
string opcional
-
min
string 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 manera silenciosa atls1.2
. Simax
se establece en uno de esos valores o 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 el socket. Cada socket creado debe cerrarse después de su uso. El ID del socket ya no es válido en cuanto se llama a la función. Sin embargo, se garantiza que el socket se cerrará solo cuando se invoque la devolución de llamada.
Parámetros
-
socketId
número
El identificador del socket.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promesa<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 par. Si se produce un error de red mientras el entorno de ejecución recibe paquetes, se genera un evento onReceiveError
, momento en el que no se generarán más eventos onReceive
para este socket hasta que se llame al método resume
.
Parámetros
-
socketId
número
El identificador del socket.
-
peerAddress
string
La dirección de la máquina remota. Se admiten los formatos de nombre 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 dirección.
-
callback
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.
-
Muestra
-
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 enchufe.
Parámetros
-
socketId
número
El identificador del socket.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promesa<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 de un socket determinado.
Parámetros
-
socketId
número
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.
-
Muestra
-
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 abiertos actualmente que pertenecen a la aplicación.
Parámetros
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:(socketInfos: SocketInfo[]) => void
-
socketInfos
Array de objeto que contiene información del socket.
-
Muestra
-
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 TLS a través del socket de cliente TCP conectado.
Parámetros
-
socketId
número
El socket existente conectado que se usará.
-
opciones
SecureOptions opcional
Las restricciones y los parámetros de la conexión TLS
-
callback
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
El identificador del socket.
-
datos
ArrayBuffer
Los datos que se enviarán.
-
callback
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 función keep-alive para una conexión TCP.
Parámetros
-
socketId
número
El identificador del socket.
-
habilitar
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 de keepalive. El valor predeterminado es 0.
-
callback
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. El algoritmo de Nagle se inhabilitará cuando se configure TCP_NODELAY
.
Parámetros
-
socketId
número
El identificador del socket.
-
noDelay
boolean
Si es verdadero, se inhabilita el algoritmo de Nagle.
-
callback
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 aplicación para que no reciba mensajes de su intercambio de tráfico. El valor predeterminado es "false". Por lo general, una aplicación utiliza la pausa de un socket para limitar los datos que envía su intercambio de tráfico. Cuando se detiene 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 mensajes.
Parámetros
-
socketId
número
-
detenido
boolean
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promesa<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
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
Muestra
-
Promesa<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 los datos de un socket determinado.
Parámetros
-
callback
función
El parámetro
callback
se ve de la siguiente manera:(info: ReceiveInfo) => void
-
información
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Evento generado cuando se produjo un error de red mientras el entorno de ejecución estaba esperando datos en la dirección y el puerto del socket. 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
función
El parámetro
callback
se ve de la siguiente manera:(info: ReceiveErrorInfo) => void
-
información
-