Beschrijving
Gebruik de chrome.socket API om gegevens te sturen en te krijgen via het netwerk met TCP- en UDP-verbindingen. Opmerking: Vanaf Chrome 33 is deze API beëindigd ten gunste van de API's sockets.udp, sockets.tcp en sockets.tcpServer.
Rechten
socketTypen
AcceptInfo
Eigenschappen
-
resultCode
getal
-
socketId
number optioneel
De ID van de geaccepteerde socket.
CreateInfo
Eigenschappen
-
socketId
getal
De ID van de nieuwe socket.
CreateOptions
NetworkInterface
Eigenschappen
-
adres
tekenreeks
Het beschikbare IPv4/6-adres.
-
name
tekenreeks
De onderliggende naam van de adapter. Op *nix is dit meestal 'eth0', 'lo', enzovoort.
-
prefixLength
getal
De prefixlengte
ReadInfo
Eigenschappen
-
gegevens
ArrayBuffer
-
resultCode
getal
De resultCode die is geretourneerd door de onderliggende read()-aanroep.
RecvFromInfo
Eigenschappen
-
adres
tekenreeks
Het adres van de externe machine.
-
gegevens
ArrayBuffer
-
poort
getal
-
resultCode
getal
De resultCode die is geretourneerd door de onderliggende recvfrom()-aanroep.
SecureOptions
Eigenschappen
-
tlsVersion
TLSVersionConstraints optioneel
SocketInfo
Eigenschappen
-
verbonden
booleaans
Of de onderliggende socket is verbonden.
Voor
tcp-sockets blijft dit waar, zelfs als de externe peer de verbinding heeft verbroken. Lezen of schrijven naar de socket kan dan leiden tot een fout, wat erop wijst dat deze socket moet worden ontkoppeld viadisconnect().Voor
udp-sockets geeft dit alleen aan of er een standaard extern adres is opgegeven voor het lezen en schrijven van pakketten. -
localAddress
tekenreeks optioneel
Als de onderliggende socket is gebonden of verbonden, bevat deze het lokale IPv4/6-adres.
-
localPort
number optioneel
Als de onderliggende socket is gebonden of verbonden, bevat deze de lokale poort.
-
peerAddress
tekenreeks optioneel
Als de onderliggende socket is verbonden, bevat dit het IPv4/6-adres van de peer.
-
peerPort
number optioneel
Als de onderliggende socket is verbonden, bevat dit de poort van de verbonden peer.
-
socketType
Het type van de doorgegeven socket. Dit is
tcpofudp.
SocketType
Enum
"tcp"
"udp"
TLSVersionConstraints
Eigenschappen
-
max
tekenreeks optioneel
-
min
tekenreeks optioneel
De minimale en maximale acceptabele versies van TLS. Ondersteunde waarden zijn
tls1.2oftls1.3.De waarden
tls1entls1.1worden niet meer ondersteund. Alsminis ingesteld op een van deze waarden, wordt deze ongemerkt vastgezet optls1.2. Alsmaxis ingesteld op een van die waarden of een andere niet-herkende waarde, wordt deze genegeerd.
WriteInfo
Eigenschappen
-
bytesWritten
getal
Het aantal verstuurde bytes of een negatieve foutcode.
Methoden
accept()
chrome.socket.accept(
socketId: number,
callback: function,
): void
Deze methode is alleen van toepassing op TCP-sockets. Registreert een callbackfunctie die wordt aangeroepen als een verbinding wordt geaccepteerd op deze luisterende serversocket. Listen moet eerst worden aangeroepen. Als er al een actieve acceptatie-callback is, wordt deze callback onmiddellijk aangeroepen met een fout als de resultCode.
Parameters
-
socketId
getal
De socketId.
-
callback
functie
De parameter
callbackziet er zo uit:(acceptInfo: AcceptInfo) => void
-
acceptInfo
-
bind()
chrome.socket.bind(
socketId: number,
address: string,
port: number,
callback: function,
): void
Binds the local address for socket. Op dit moment wordt TCP-socket niet ondersteund.
Parameters
-
socketId
getal
De socketId.
-
adres
tekenreeks
Het adres van het lokale apparaat.
-
poort
getal
De poort van het lokale apparaat.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
connect()
chrome.socket.connect(
socketId: number,
hostname: string,
port: number,
callback: function,
): void
Verbindt de socket met de externe machine (voor een tcp-socket). Voor een udp-socket stelt dit het standaardadres in waarnaar pakketten worden gestuurd en waarvan ze worden gelezen voor read()- en write()-aanroepen.
Parameters
-
socketId
getal
De socketId.
-
hostname
tekenreeks
De hostnaam of het IP-adres van de externe machine.
-
poort
getal
De poort van de externe machine.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
create()
chrome.socket.create(
type: SocketType,
options?: CreateOptions,
callback?: function,
): Promise<CreateInfo>
Maakt een socket van het opgegeven type die verbinding maakt met de opgegeven externe machine.
Parameters
-
type
Het type socket dat moet worden gemaakt. Moet
tcpofudpzijn. -
opties
CreateOptions optioneel
De socketopties.
-
callback
functie optioneel
De parameter
callbackziet er zo uit:(createInfo: CreateInfo) => void
-
createInfo
-
Retourzendingen
-
Promise<CreateInfo>
Chrome 121 of hogerPromises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
destroy()
chrome.socket.destroy(
socketId: number,
): void
Vernietigt de socket. Elke gemaakte socket moet na gebruik worden vernietigd.
Parameters
-
socketId
getal
De socketId.
disconnect()
chrome.socket.disconnect(
socketId: number,
): void
Verbreekt de verbinding met de socket. Voor UDP-sockets is disconnect een niet-bewerking, maar kan deze veilig worden aangeroepen.
Parameters
-
socketId
getal
De socketId.
getInfo()
chrome.socket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Haalt de status van de aangegeven socket op.
Parameters
-
socketId
getal
De socketId.
-
callback
functie optioneel
De parameter
callbackziet er zo uit:(result: SocketInfo) => void
-
resultaat
-
Retourzendingen
-
Promise<SocketInfo>
Chrome 121 of hogerPromises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
getJoinedGroups()
chrome.socket.getJoinedGroups(
socketId: number,
callback: function,
): void
Haalt de multicast-groepsadressen op waar de socket op dit moment aan is gekoppeld.
Parameters
-
socketId
getal
De socketId.
-
callback
functie
De parameter
callbackziet er zo uit:(groups: string[]) => void
-
groepen
tekenreeks[]
-
getNetworkList()
chrome.socket.getNetworkList(
callback?: function,
): Promise<NetworkInterface[]>
Hiermee wordt informatie over lokale adapters op dit systeem opgehaald.
Parameters
-
callback
functie optioneel
De parameter
callbackziet er zo uit:(result: NetworkInterface[]) => void
-
resultaat
-
Retourzendingen
-
Promise<NetworkInterface[]>
Chrome 121 of hogerPromises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
joinGroup()
chrome.socket.joinGroup(
socketId: number,
address: string,
callback: function,
): void
Deelnemen aan de multicastgroep en pakketten van die groep ontvangen. De socket moet van het type UDP zijn en moet aan een lokale poort zijn gebonden voordat deze methode wordt aangeroepen.
Parameters
-
socketId
getal
De socketId.
-
adres
tekenreeks
Het groepsadres waarvan je lid wilt worden. Domeinnamen worden niet ondersteund.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
leaveGroup()
chrome.socket.leaveGroup(
socketId: number,
address: string,
callback: function,
): void
Verlaat de multicast-groep waaraan je eerder hebt deelgenomen met joinGroup. Je hoeft de multicast-groep niet te verlaten voordat je de socket vernietigt of afsluit. Dit wordt automatisch aangeroepen door het OS.
Als je de groep verlaat, kan de router geen multicast-datagrammen naar de lokale host sturen, ervan uitgaande dat geen ander proces op de host nog lid is van de groep.
Parameters
-
socketId
getal
De socketId.
-
adres
tekenreeks
Het groepsadres dat je wilt verlaten. Domeinnamen worden niet ondersteund.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
listen()
chrome.socket.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
): void
Deze methode is alleen van toepassing op TCP-sockets. Luistert naar verbindingen op de opgegeven poort en het opgegeven adres. Hierdoor wordt dit een serversocket en kunnen clientsocketfuncties (verbinden, lezen, schrijven) niet meer worden gebruikt op deze socket.
Parameters
-
socketId
getal
De socketId.
-
adres
tekenreeks
Het adres van het lokale apparaat.
-
poort
getal
De poort van het lokale apparaat.
-
backlog
number optioneel
De lengte van de luisterwachtrij van de socket.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
read()
chrome.socket.read(
socketId: number,
bufferSize?: number,
callback: function,
): void
Leest gegevens uit de aangegeven verbonden socket.
Parameters
-
socketId
getal
De socketId.
-
bufferSize
number optioneel
De grootte van de leesbuffer.
-
callback
functie
De parameter
callbackziet er zo uit:(readInfo: ReadInfo) => void
-
readInfo
-
recvFrom()
chrome.socket.recvFrom(
socketId: number,
bufferSize?: number,
callback: function,
): void
Ontvangt gegevens van de opgegeven UDP-socket.
Parameters
-
socketId
getal
De socketId.
-
bufferSize
number optioneel
De grootte van de ontvangstbuffer.
-
callback
functie
De parameter
callbackziet er zo uit:(recvFromInfo: RecvFromInfo) => void
-
recvFromInfo
-
secure()
chrome.socket.secure(
socketId: number,
options?: SecureOptions,
callback: function,
): void
Start een TLS-clientverbinding via een verbonden TCP-clientsocket.
Parameters
-
socketId
getal
De verbonden socket die moet worden gebruikt.
-
opties
SecureOptions optioneel
Beperkingen en parameters voor de TLS-verbinding.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
sendTo()
chrome.socket.sendTo(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
callback: function,
): void
Stuurt gegevens op de opgegeven UDP-socket naar het opgegeven adres en de opgegeven poort.
Parameters
-
socketId
getal
De socketId.
-
gegevens
ArrayBuffer
De gegevens die moeten worden geschreven.
-
adres
tekenreeks
Het adres van de externe machine.
-
poort
getal
De poort van de externe machine.
-
callback
functie
De parameter
callbackziet er zo uit:(writeInfo: WriteInfo) => void
-
writeInfo
-
setKeepAlive()
chrome.socket.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 socketId.
-
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
callbackziet er zo uit:(result: boolean) => void
-
resultaat
booleaans
-
setMulticastLoopbackMode()
chrome.socket.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
): void
Stel in of multicast-pakketten die van de host naar de multicast-groep worden gestuurd, worden teruggeleid naar de host.
Opmerking: Het gedrag van setMulticastLoopbackMode verschilt enigszins tussen Windows- en Unix-achtige systemen. De inconsistentie treedt alleen op als er meer dan één app op dezelfde host is die is gekoppeld aan dezelfde multicast-groep, terwijl er verschillende instellingen zijn voor de multicast-loopbackmodus. In Windows ONTVANGEN de apps met loopback uit de loopback-pakketten niet. Op Unix-achtige systemen STUREN de apps met loopback uit de loopback-pakketten niet naar andere apps op dezelfde host. Zie MSDN: https://learn.microsoft.com/nl-nl/windows/win32/winsock/ip-multicast-2
Voor het aanroepen van deze methode zijn geen multicast-rechten vereist.
Parameters
-
socketId
getal
De socketId.
-
aangezet
booleaans
Geef aan of je de loopback-modus wilt aanzetten.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
setMulticastTimeToLive()
chrome.socket.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
): void
Stel de time-to-live in van multicastpakketten die naar de multicastgroep worden gestuurd.
Voor het aanroepen van deze methode zijn geen multicast-rechten vereist.
Parameters
-
socketId
getal
De socketId.
-
ttl
getal
De time-to-live-waarde.
-
callback
functie
De parameter
callbackziet er zo uit:(result: number) => void
-
resultaat
getal
-
setNoDelay()
chrome.socket.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 socketId.
-
noDelay
booleaans
Als dit waar is, wordt het algoritme van Nagle uitgezet.
-
callback
functie
De parameter
callbackziet er zo uit:(result: boolean) => void
-
resultaat
booleaans
-
write()
chrome.socket.write(
socketId: number,
data: ArrayBuffer,
callback: function,
): void
Schrijft gegevens naar de opgegeven verbonden socket.