Opis
Interfejs API chrome.sockets.tcp
służy do wysyłania i odbierania danych przez sieć przy użyciu połączeń TCP. Ten interfejs API zastępuje funkcję TCP wcześniej dostępną w interfejsie API chrome.socket
.
Plik manifestu
Typy
CreateInfo
Właściwości
-
socketId
liczba
Identyfikator nowo utworzonego gniazda. Pamiętaj, że identyfikatory gniazd utworzone za pomocą tego interfejsu API nie są zgodne z identyfikatorami gniazd utworzonymi za pomocą innych interfejsów API, na przykład z wycofanym interfejsem
[
socket](../socket/)
API.
DnsQueryType
Ustawienia rozpoznawania nazw DNS. Wartość domyślna to any
i używa bieżącej konfiguracji systemu operacyjnego, która może zwracać IPv4 lub IPv6. Parametr ipv4
wymusza stosowanie IPv4, a ipv6
wymusza stosowanie IPv6.
Typ wyliczeniowy
"any"
"ipv4"
"ipv6"
ReceiveErrorInfo
Właściwości
-
resultCode
liczba
Kod wyniku zwrócony z wywołania sieciowego.
-
socketId
liczba
Identyfikator gniazda.
ReceiveInfo
Właściwości
-
dane
SlateBuffer
Odebrane dane o maksymalnym rozmiarze
bufferSize
. -
socketId
liczba
Identyfikator gniazda.
SecureOptions
Właściwości
-
tlsVersion
TLSVersionConstraints – opcjonalne
SendInfo
Właściwości
-
bytesSent
liczba opcjonalnie
Liczba wysłanych bajtów (jeśli wynik = 0)
-
resultCode
liczba
Kod wyniku zwrócony z wywołania sieciowego. Wartość ujemna oznacza błąd.
SocketInfo
Właściwości
-
bufferSize
liczba opcjonalnie
Rozmiar bufora używanego do odbierania danych. Jeśli nie określono wyraźnie rozmiaru bufora, wartość nie jest podana.
-
Połączono
wartość logiczna
Flaga z informacją, czy gniazdo jest połączone ze zdalnym połączeniem równorzędnym.
-
localAddress
ciąg znaków opcjonalny
Jeśli bazowe gniazdo jest podłączone, zawiera jego lokalny adres IPv4/6.
-
localPort
liczba opcjonalnie
Jeśli bazowe gniazdo jest podłączone, zawiera port lokalny.
-
nazwa
ciąg znaków opcjonalny
Zdefiniowany przez aplikację ciąg powiązany z gniazdem.
-
wstrzymana
wartość logiczna
Flaga z informacją, czy połączone gniazdo blokuje wysyłanie dalszych danych przez sieć równorzędną (patrz
setPaused
). -
peerAddress
ciąg znaków opcjonalny
Jeśli bazowe gniazdo jest podłączone, zawiera adres peera/ IPv4/6.
-
peerPort
liczba opcjonalnie
Jeśli bazowe gniazdo jest podłączone, zawiera port równorzędny.
-
trwała
wartość logiczna
Flaga z informacją, czy gniazdo jest otwarte, gdy aplikacja jest zawieszona (patrz
SocketProperties.persistent
). -
socketId
liczba
Identyfikator gniazda.
SocketProperties
Właściwości
-
bufferSize
liczba opcjonalnie
Rozmiar bufora używanego do odbierania danych. Wartością domyślną jest 4096.
-
nazwa
ciąg znaków opcjonalny
Zdefiniowany przez aplikację ciąg powiązany z gniazdem.
-
trwała
Wartość logiczna opcjonalna
Flaga z informacją, czy gniazdo jest otwarte, gdy strona zdarzenia aplikacji jest wyładowywana (zobacz Zarządzanie cyklem życia aplikacji). Wartość domyślna to „false” (fałsz). Podczas wczytywania aplikacji wszystkie gniazda otwarte wcześniej z ustawieniem trwały=true można pobrać za pomocą funkcji
getSockets
.
TLSVersionConstraints
Właściwości
-
maksimum
ciąg znaków opcjonalny
-
min
ciąg znaków opcjonalny
Minimalna i maksymalna akceptowana wersja protokołu TLS. Obsługiwane wartości to
tls1.2
lubtls1.3
.Wartości
tls1
itls1.1
nie są już obsługiwane. Jeśli zasadamin
ma ustawioną jedną z tych wartości, zostanie dyskretnie ograniczona dotls1.2
. Jeśli zasadamax
ma ustawioną jedną z tych wartości lub inną nierozpoznaną wartość, zostanie dyskretnie ignorowana.
Metody
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
)
Zamyka gniazdo i zwalnia adres/port, z którym jest powiązane. Po użyciu każdego gniazda należy zamknąć. Identyfikator gniazda utracił ważność, gdy tylko funkcja zostanie wywołana. Gwarantujemy jednak, że gniazdo zostanie zamknięte tylko po wywołaniu wywołania zwrotnego.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 121 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
)
Umożliwia podłączenie gniazda do komputera zdalnego. Po zakończeniu operacji connect
zdarzenia onReceive
zostaną zgłoszone po otrzymaniu danych z połączenia równorzędnego. Jeśli błąd sieci występuje w czasie, gdy środowisko wykonawcze odbiera pakiety, wywoływane jest zdarzenie onReceiveError
, co oznacza, że dla tego gniazda nie będzie wywoływane żadne zdarzenie onReceive
do czasu wywołania metody resume
.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
peerAddress
ciąg znaków
Adres komputera zdalnego. Obsługiwane są nazwy DNS, formaty IPv4 i IPv6.
-
peerPort
liczba
Port komputera zdalnego.
-
dnsQueryType
Opcjonalny DnsQueryType
Chrome 103 i nowsze wersje .Preferencje dotyczące rozdzielczości adresu.
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(result: number) => void
-
wynik
liczba
Kod wyniku zwrócony z wywołania sieciowego. Wartość ujemna oznacza błąd.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
)
Tworzy gniazdo TCP.
Parametry
-
usługi
SocketProperties – opcjonalne
Właściwości gniazda (opcjonalnie).
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(createInfo: CreateInfo) => void
-
createInfo
Wynik utworzenia gniazda.
-
Zwroty
-
Promise<CreateInfo>
Chrome w wersji 121 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
)
Odłącza gniazdko.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 121 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
)
Pobiera stan danego gniazda.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(socketInfo: SocketInfo) => void
-
socketInfo
Obiekt zawierający informacje o gniazdie.
-
Zwroty
-
Promise<SocketInfo>
Chrome w wersji 121 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
)
Pobiera listę obecnie otwartych gniazd należących do aplikacji.
Parametry
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(socketInfos: SocketInfo[]) => void
-
socketInfos
Tablica obiektu z informacjami o gniazdie.
-
Zwroty
-
Promise<SocketInfo[]>
Chrome w wersji 121 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
Rozpocznij połączenie z klientem TLS przez połączone gniazdo klienta TCP.
Parametry
-
socketId
liczba
Istniejące gniazdo, którego chcesz używać.
-
Opcje
Opcjonalne SecureOptions
Ograniczenia i parametry połączenia TLS.
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(result: number) => void
-
wynik
liczba
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
)
Wysyła dane z danego gniazda TCP.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
dane
SlateBuffer
Dane do wysłania.
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(sendInfo: SendInfo) => void
-
sendInfo
Wynik metody
send
.
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
Włącza lub wyłącza funkcję utrzymywania aktywności połączenia TCP.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
włącz
wartość logiczna
Jeśli ma wartość true (prawda), włącz funkcję utrzymywania aktywności.
-
opóźnienia
liczba opcjonalnie
Ustaw opóźnienie w sekundach między ostatnim otrzymanym pakietem danych a pierwszą sondą utrzymywania aktywności. Wartość domyślna to 0.
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(result: number) => void
-
wynik
liczba
Kod wyniku zwrócony z wywołania sieciowego. Wartość ujemna oznacza błąd.
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
Konfiguruje lub usuwa TCP_NODELAY
dla połączenia TCP. Po ustawieniu ustawienia TCP_NODELAY
algorytm Nagle zostanie wyłączony.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
noDelay
wartość logiczna
Jeśli ma wartość prawda, algorytm Nagle wyłącza algorytm Nagle.
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(result: number) => void
-
wynik
liczba
Kod wyniku zwrócony z wywołania sieciowego. Wartość ujemna oznacza błąd.
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Włącza lub wyłącza odbieranie wiadomości od peera przez aplikację. Wartość domyślna to „false”. Wstrzymanie gniazda jest zwykle używane przez aplikację do ograniczania danych wysyłanych przez serwer równorzędny. Gdy gniazdo jest wstrzymane, nie jest wywoływane żadne zdarzenie onReceive
. Gdy gniazdo jest podłączone i wznowione, zdarzenia onReceive
są ponownie zgłaszane po odebraniu wiadomości.
Parametry
-
socketId
liczba
-
wstrzymana
wartość logiczna
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 121 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Aktualizuje właściwości gniazda.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
usługi
Właściwości do zaktualizowania.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 121 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
Wydarzenia
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
Zdarzenie zgłoszone po otrzymaniu danych z danego gniazda.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(info: ReceiveInfo) => void
-
informacje
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Zdarzenie wywoływane, gdy błąd sieci wystąpił, gdy środowisko wykonawcze czekało na dane dotyczące adresu gniazda i portu. Po wywołaniu tego zdarzenia gniazdo jest ustawione na paused
i nie są dla niego wywoływane żadne zdarzenia onReceive
.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(info: ReceiveErrorInfo) => void
-
informacje
-