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 antes se encontraba en la API de chrome.socket.
Manifiesto
Tipos
CreateInfo
Propiedades
-
socketId
número
Es 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 actual del SO, que puede devolver IPv4 o IPv6. ipv4 fuerza IPv4 y ipv6 fuerza IPv6.
Enum
"any"
"ipv4"
"ipv6"
ReceiveErrorInfo
Propiedades
-
resultCode
número
Es el código de resultado que se devuelve de la llamada de red subyacente.
-
socketId
número
Es el identificador del socket.
ReceiveInfo
Propiedades
-
datos
ArrayBuffer
Son 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
number opcional
La cantidad de bytes enviados (si el resultado es 0)
-
resultCode
número
Es el código de resultado que se devuelve de la llamada de red subyacente. Un valor negativo indica un error.
SocketInfo
Propiedades
-
bufferSize
number opcional
Es el tamaño del búfer que se usa para recibir datos. Si no se especificó un tamaño de búfer de forma explícita, no se proporciona el valor.
-
Conectado
booleano
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
number opcional
Si el socket subyacente está conectado, contiene su puerto local.
-
nombre
string opcional
Es la cadena definida por la aplicación asociada con el socket.
-
detenido
booleano
Es una 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 del par.
-
peerPort
number opcional
Si el socket subyacente está conectado, contiene el puerto de par.
-
persistente
booleano
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
number opcional
Es el tamaño del búfer que se usa para recibir datos. El valor predeterminado es 4096.
-
nombre
string opcional
Es una cadena definida por la aplicación asociada con el socket.
-
persistente
booleano opcional
Marca que indica si el socket se deja abierto cuando se descarga la página de eventos 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 haya abierto 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.2otls1.3.Ya no se admiten los valores
tls1nitls1.1. Siminse establece en uno de estos valores, se limitará de forma silenciosa atls1.2. Simaxse establece en uno de esos valores o en cualquier otro valor no reconocido, se ignorará de forma silenciosa.
Métodos
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
): Promise<void>
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 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
Es el identificador del socket.
-
callback
función opcional
El parámetro
callbackse ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo se admiten en 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,
): void
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á más eventos onReceive para este socket hasta que se llame al método resume.
Parámetros
-
socketId
número
Es el identificador del socket.
-
peerAddress
string
Es la dirección de la máquina remota. Se admiten los formatos de nombre de DNS, IPv4 e IPv6.
-
peerPort
número
Es el puerto de la máquina remota.
-
dnsQueryType
DnsQueryType opcional
Chrome 103 y versiones posterioresEs la preferencia de resolución de direcciones.
-
callback
función
El parámetro
callbackse ve de la siguiente manera:(result: number) => void
-
resultado
número
Es el código de resultado que se muestra de la llamada de red subyacente. Un valor negativo indica un error.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Crea un socket TCP.
Parámetros
-
propiedades
SocketProperties opcional
Las propiedades del socket (opcional).
-
callback
función opcional
El parámetro
callbackse ve de la siguiente manera:(createInfo: CreateInfo) => void
-
createInfo
Es el resultado de la creación del socket.
-
Muestra
-
Promise<CreateInfo>
Chrome 121 y versiones posterioresLas promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Desconecta el socket.
Parámetros
-
socketId
número
Es el identificador del socket.
-
callback
función opcional
El parámetro
callbackse ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Recupera el estado del socket determinado.
Parámetros
-
socketId
número
Es el identificador del socket.
-
callback
función opcional
El parámetro
callbackse ve de la siguiente manera:(socketInfo: SocketInfo) => void
-
socketInfo
Es el objeto que contiene la información del socket.
-
Muestra
-
Promise<SocketInfo>
Chrome 121 y versiones posterioresLas promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Recupera la lista de sockets abiertos actualmente que pertenecen a la aplicación.
Parámetros
-
callback
función opcional
El parámetro
callbackse ve de la siguiente manera:(socketInfos: SocketInfo[]) => void
-
socketInfos
Es un array de objetos que contiene información del socket.
-
Muestra
-
Promise<SocketInfo[]>
Chrome 121 y versiones posterioresLas promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
): void
Inicia una conexión de cliente TLS a través del socket del cliente TCP conectado.
Parámetros
-
socketId
número
Es el socket conectado existente que se usará.
-
opciones
SecureOptions opcional
Restricciones y parámetros para la conexión TLS.
-
callback
función
El parámetro
callbackse ve de la siguiente manera:(result: number) => void
-
resultado
número
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
): void
Envía datos en el socket TCP determinado.
Parámetros
-
socketId
número
Es el identificador del socket.
-
datos
ArrayBuffer
Son los datos que se enviarán.
-
callback
función
El parámetro
callbackse ve de la siguiente manera:(sendInfo: SendInfo) => void
-
sendInfo
Es el resultado del método
send.
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
): void
Habilita o inhabilita la funcionalidad de mantener activa una conexión TCP.
Parámetros
-
socketId
número
Es el identificador del socket.
-
habilitar
booleano
Si es verdadero, habilita la funcionalidad de mantener activa la conexión.
-
delay
number opcional
Establece los segundos de retraso entre el último paquete de datos recibido y el primer sondeo de keepalive. El valor predeterminado es 0.
-
callback
función
El parámetro
callbackse ve de la siguiente manera:(result: number) => void
-
resultado
número
Es el código de resultado que se devuelve de la llamada de red subyacente. Un valor negativo indica un error.
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
): void
Establece o borra TCP_NODELAY para una conexión TCP. El algoritmo de Nagle se inhabilitará cuando se establezca TCP_NODELAY.
Parámetros
-
socketId
número
Es el identificador del socket.
-
noDelay
booleano
Si es verdadero, inhabilita el algoritmo de Nagle.
-
callback
función
El parámetro
callbackse ve de la siguiente manera:(result: number) => void
-
resultado
número
Es el código de resultado que se muestra de la llamada de red subyacente. Un valor negativo indica un error.
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Habilita o inhabilita que la aplicación reciba mensajes de su par. El valor predeterminado es "false". Por lo general, una aplicación pausa 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, se vuelven a generar eventos onReceive cuando se reciben mensajes.
Parámetros
-
socketId
número
-
detenido
booleano
-
callback
función opcional
El parámetro
callbackse ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Actualiza las propiedades del socket.
Parámetros
-
socketId
número
Es el identificador del socket.
-
propiedades
Son las propiedades que se actualizarán.
-
callback
función opcional
El parámetro
callbackse ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 121 y versiones posterioresLas promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
Eventos
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
Es el evento que se genera cuando se reciben datos para un socket determinado.
Parámetros
-
callback
función
El parámetro
callbackse ve de la siguiente manera:(info: ReceiveInfo) => void
-
información
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Es el evento que se genera cuando se produce un error de red mientras el entorno de ejecución espera 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
callbackse ve de la siguiente manera:(info: ReceiveErrorInfo) => void
-
información
-