chrome.sockets.tcp

Beschrijving

Gebruik de chrome.sockets.tcp API om gegevens te sturen en te krijgen via het netwerk met TCP-verbindingen. Deze API vervangt de TCP-functionaliteit die eerder in de chrome.socket API zat.

Manifest

De volgende sleutels moeten in het manifest worden gedefinieerd om deze API te gebruiken.

"sockets"

Typen

CreateInfo

Eigenschappen

  • socketId

    getal

    De ID van de nieuwe socket. Socket-ID's die zijn gemaakt met deze API, zijn niet compatibel met socket-ID's die zijn gemaakt met andere API's, zoals de beëindigde [socket](../socket/)-API.

DnsQueryType

Chrome 103+

Voorkeuren voor DNS-omzetting. De standaardinstelling is any en gebruikt de huidige OS-configuratie, die IPv4 of IPv6 kan retourneren. ipv4 dwingt IPv4 af en ipv6 dwingt IPv6 af.

Enum

"any"

"ipv4"

"ipv6"

ReceiveErrorInfo

Eigenschappen

  • resultCode

    getal

    De resultaatcode die is geretourneerd door de onderliggende netwerkaanroep.

  • socketId

    getal

    De socket-ID.

ReceiveInfo

Eigenschappen

  • gegevens

    ArrayBuffer

    De ontvangen gegevens, met een maximale grootte van bufferSize.

  • socketId

    getal

    De socket-ID.

SecureOptions

Eigenschappen

SendInfo

Eigenschappen

  • bytesSent

    number optioneel

    Het aantal verstuurde bytes (als resultaat == 0)

  • resultCode

    getal

    De resultaatcode die is geretourneerd door de onderliggende netwerkaanroep. Een negatieve waarde geeft een fout aan.

SocketInfo

Eigenschappen

  • bufferSize

    number optioneel

    De grootte van de buffer die wordt gebruikt om gegevens te ontvangen. Als er geen buffergrootte expliciet is aangegeven, wordt de waarde niet verstrekt.

  • verbonden

    booleaans

    Markering die aangeeft of de socket is verbonden met een externe peer.

  • localAddress

    tekenreeks optioneel

    Als de onderliggende socket is verbonden, bevat deze het lokale IPv4/6-adres.

  • localPort

    number optioneel

    Als de onderliggende socket is verbonden, bevat deze de lokale poort.

  • name

    tekenreeks optioneel

    Door de app gedefinieerde tekenreeks die aan de socket is gekoppeld.

  • onderbroken

    booleaans

    Markering die aangeeft of een verbonden socket de peer blokkeert om meer gegevens te sturen (zie setPaused).

  • peerAddress

    tekenreeks optioneel

    Als de onderliggende socket is verbonden, bevat dit het peer-/IPv4-/6-adres.

  • peerPort

    number optioneel

    Als de onderliggende socket is verbonden, bevat dit de peer-poort.

  • persistent

    booleaans

    Markering die aangeeft of de socket open blijft als de app wordt opgeschort (zie SocketProperties.persistent).

  • socketId

    getal

    De socket-ID.

SocketProperties

Eigenschappen

  • bufferSize

    number optioneel

    De grootte van de buffer die wordt gebruikt om gegevens te ontvangen. De standaardwaarde is 4096.

  • name

    tekenreeks optioneel

    Een door de app gedefinieerde tekenreeks die aan de socket is gekoppeld.

  • persistent

    booleaans optioneel

    Markering die aangeeft of de socket open blijft als de gebeurtenispagina van de app wordt verwijderd (zie Levenscyclus van app beheren). De standaardwaarde is false. Als de app wordt geladen, kunnen sockets die eerder zijn geopend met persistent=true, worden opgehaald met getSockets.

TLSVersionConstraints

Eigenschappen

  • max

    tekenreeks optioneel

  • min

    tekenreeks optioneel

    De minimale en maximale acceptabele versies van TLS. Ondersteunde waarden zijn tls1.2 of tls1.3.

    De waarden tls1 en tls1.1 worden niet meer ondersteund. Als min is ingesteld op een van deze waarden, wordt deze ongemerkt vastgezet op tls1.2. Als max is ingesteld op een van die waarden of een andere niet-herkende waarde, wordt deze genegeerd.

Methoden

close()

Promise
chrome.sockets.tcp.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

Sluit de socket en geeft het adres/de poort vrij waaraan de socket is gebonden. Elke gemaakte socket moet na gebruik worden gesloten. De socket-ID is niet meer geldig zodra de functie wordt aangeroepen. De socket wordt gegarandeerd pas gesloten als de callback wordt aangeroepen.

Parameters

  • socketId

    getal

    De socket-ID.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 121 of hoger

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

connect()

chrome.sockets.tcp.connect(
  socketId: number,
  peerAddress: string,
  peerPort: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)
: void

Verbindt de socket met een externe machine. Als de bewerking connect is afgerond, worden er onReceive gebeurtenissen geactiveerd als er gegevens worden ontvangen van de peer. Als er een netwerkfout optreedt terwijl de runtime pakketten ontvangt, wordt er een onReceiveError-gebeurtenis geactiveerd. Er wordt dan geen onReceive-gebeurtenis meer geactiveerd voor deze socket totdat de resume-methode wordt aangeroepen.

Parameters

  • socketId

    getal

    De socket-ID.

  • peerAddress

    tekenreeks

    Het adres van de externe machine. DNS-naam, IPv4- en IPv6-indelingen worden ondersteund.

  • peerPort

    getal

    De poort van de externe machine.

  • dnsQueryType

    DnsQueryType optioneel

    Chrome 103+

    De voorkeur voor adresresolutie.

  • callback

    functie

    De parameter callback ziet er zo uit:

    (result: number) => void

    • resultaat

      getal

      De resultaatcode die is geretourneerd door de onderliggende netwerkaanroep. Een negatieve waarde geeft een fout aan.

create()

Promise
chrome.sockets.tcp.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

Maakt een TCP-socket.

Parameters

  • property's

    SocketProperties optioneel

    De socket-eigenschappen (optioneel).

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    (createInfo: CreateInfo) => void

    • createInfo

      Het resultaat van het maken van de socket.

Retourzendingen

  • Promise<CreateInfo>

    Chrome 121 of hoger

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

disconnect()

Promise
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)
: Promise<void>

Verbreekt de verbinding met de socket.

Parameters

  • socketId

    getal

    De socket-ID.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 121 of hoger

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

getInfo()

Promise
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

Haalt de status van de aangegeven socket op.

Parameters

  • socketId

    getal

    De socket-ID.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Object met de socketinformatie.

Retourzendingen

  • Promise<SocketInfo>

    Chrome 121 of hoger

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

getSockets()

Promise
chrome.sockets.tcp.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

Haalt de lijst op met momenteel geopende sockets die eigendom zijn van de app.

Parameters

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Matrix van object met socketinformatie.

Retourzendingen

  • Promise<SocketInfo[]>

    Chrome 121 of hoger

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

secure()

chrome.sockets.tcp.secure(
  socketId: number,
  options?: SecureOptions,
  callback: function,
)
: void

Start een TLS-clientverbinding via de verbonden TCP-clientsocket.

Parameters

  • socketId

    getal

    De bestaande, verbonden socket die moet worden gebruikt.

  • opties

    SecureOptions optioneel

    Beperkingen en parameters voor de TLS-verbinding.

  • callback

    functie

    De parameter callback ziet er zo uit:

    (result: number) => void

    • resultaat

      getal

send()

chrome.sockets.tcp.send(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)
: void

Stuurt gegevens naar de opgegeven TCP-socket.

Parameters

  • socketId

    getal

    De socket-ID.

  • gegevens

    ArrayBuffer

    De gegevens die je wilt sturen.

  • callback

    functie

    De parameter callback ziet er zo uit:

    (sendInfo: SendInfo) => void

    • sendInfo

      Resultaat van de send-methode.

setKeepAlive()

chrome.sockets.tcp.setKeepAlive(
  socketId: number,
  enable: boolean,
  delay?: number,
  callback: function,
)
: void

Hiermee zet je de keep-alive-functionaliteit voor een TCP-verbinding aan of uit.

Parameters

  • socketId

    getal

    De socket-ID.

  • aanzetten

    booleaans

    Als dit waar is, zet je de keep-alive-functionaliteit aan.

  • vertraging

    number optioneel

    Stel het aantal seconden vertraging in tussen het laatste ontvangen gegevenspakket en de eerste keepalive-probe. De standaardwaarde is 0.

  • callback

    functie

    De parameter callback ziet er zo uit:

    (result: number) => void

    • resultaat

      getal

      De resultaatcode die is geretourneerd door de onderliggende netwerkaanroep. Een negatieve waarde geeft een fout aan.

setNoDelay()

chrome.sockets.tcp.setNoDelay(
  socketId: number,
  noDelay: boolean,
  callback: function,
)
: void

Hiermee wordt TCP_NODELAY ingesteld of gewist voor een TCP-verbinding. Het algoritme van Nagle wordt uitgezet als TCP_NODELAY is ingesteld.

Parameters

  • socketId

    getal

    De socket-ID.

  • noDelay

    booleaans

    Als dit waar is, wordt het algoritme van Nagle uitgezet.

  • callback

    functie

    De parameter callback ziet er zo uit:

    (result: number) => void

    • resultaat

      getal

      De resultaatcode die is geretourneerd door de onderliggende netwerkaanroep. Een negatieve waarde geeft een fout aan.

setPaused()

Promise
chrome.sockets.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

Hiermee kan de app berichten van de peer ontvangen of niet. De standaardwaarde is false. Een socket wordt meestal onderbroken door een app om gegevens te beperken die door de peer worden gestuurd. Als een socket wordt onderbroken, wordt er geen onReceive-gebeurtenis geactiveerd. Als een socket is verbonden en de pauze is opgeheven, worden onReceive-gebeurtenissen opnieuw geactiveerd als er berichten worden ontvangen.

Parameters

  • socketId

    getal

  • onderbroken

    booleaans

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 121 of hoger

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

update()

Promise
chrome.sockets.tcp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

Updatet de socket-eigenschappen.

Parameters

  • socketId

    getal

    De socket-ID.

  • property's

    De eigenschappen die je wilt updaten.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 121 of hoger

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

Evenementen

onReceive

chrome.sockets.tcp.onReceive.addListener(
  callback: function,
)

Gebeurtenis die wordt geactiveerd wanneer gegevens zijn ontvangen voor een bepaalde socket.

Parameters

onReceiveError

chrome.sockets.tcp.onReceiveError.addListener(
  callback: function,
)

Gebeurtenis die wordt geactiveerd als er een netwerkfout optreedt terwijl de runtime wacht op gegevens op het socketadres en de poort. Nadat deze gebeurtenis is geactiveerd, wordt de socket ingesteld op paused en worden er geen onReceive-gebeurtenissen meer geactiveerd voor deze socket.

Parameters