Opis
Używaj interfejsu API chrome.sockets.tcp do wysyłania i odbierania danych przez sieć za pomocą połączeń TCP. Ten interfejs API zastępuje funkcje TCP, które wcześniej były dostępne 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, takich jak wycofany interfejs API
[socket](../socket/).
DnsQueryType
Ustawienia rozpoznawania nazw DNS. Domyślna wartość to any i używa bieżącej konfiguracji systemu operacyjnego, która może zwracać adres IPv4 lub IPv6. ipv4 wymusza IPv4, a ipv6 wymusza IPv6.
Typ wyliczeniowy
"any"
"ipv4"
"ipv6"
ReceiveErrorInfo
Właściwości
-
resultCode
liczba
Kod wyniku zwrócony przez wywołanie sieciowe.
-
socketId
liczba
Identyfikator gniazda.
ReceiveInfo
Właściwości
-
dane
ArrayBuffer
Otrzymane dane o maksymalnym rozmiarze
bufferSize. -
socketId
liczba
Identyfikator gniazda.
SecureOptions
Właściwości
-
tlsVersion
TLSVersionConstraints opcjonalne
SendInfo
Właściwości
-
bytesSent
number optional
Liczba wysłanych bajtów (jeśli wynik == 0)
-
resultCode
liczba
Kod wyniku zwrócony przez wywołanie sieciowe. Wartość ujemna oznacza błąd.
SocketInfo
Właściwości
-
bufferSize
number optional
Rozmiar bufora używanego do odbierania danych. Jeśli nie określono wyraźnie rozmiaru bufora, wartość nie jest podawana.
-
Połączono
wartość logiczna
Flaga wskazująca, czy gniazdo jest połączone ze zdalnym węzłem.
-
localAddress
ciąg znaków opcjonalny
Jeśli bazowe gniazdo jest połączone, zawiera lokalny adres IPv4/6.
-
localPort
number optional
Jeśli bazowe gniazdo jest połączone, zawiera jego port lokalny.
-
nazwa
ciąg znaków opcjonalny
Zdefiniowany przez aplikację ciąg znaków powiązany z gniazdem.
-
wstrzymana
wartość logiczna
Flaga wskazująca, czy połączone gniazdo blokuje wysyłanie przez element równorzędny większej ilości danych (patrz
setPaused). -
peerAddress
ciąg znaków opcjonalny
Jeśli gniazdo jest połączone, zawiera adres IPv4/6 peera.
-
peerPort
number optional
Jeśli bazowe gniazdo jest połączone, zawiera port peera.
-
trwałe
wartość logiczna
Flaga z informacją, czy gniazdo pozostaje otwarte, gdy aplikacja jest zawieszona (patrz
SocketProperties.persistent). -
socketId
liczba
Identyfikator gniazda.
SocketProperties
Właściwości
-
bufferSize
number optional
Rozmiar bufora używanego do odbierania danych. Wartością domyślną jest 4096.
-
nazwa
ciąg znaków opcjonalny
Zdefiniowany przez aplikację ciąg znaków powiązany z gniazdem.
-
trwałe
boolean opcjonalne
Flaga wskazująca, czy gniazdo pozostaje otwarte po wyładowaniu strony zdarzenia aplikacji (patrz Zarządzanie cyklem życia aplikacji). Wartość domyślna to „false”. Po wczytaniu aplikacji wszystkie gniazda otwarte wcześniej z ustawieniem persistent=true można pobrać za pomocą
getSockets.
TLSVersionConstraints
Właściwości
-
maksimum
ciąg znaków opcjonalny
-
min
ciąg znaków opcjonalny
Minimalna i maksymalna akceptowana wersja TLS. Obsługiwane wartości to
tls1.2lubtls1.3.Wartości
tls1itls1.1nie są już obsługiwane. Jeśli zasadaminjest ustawiona na jedną z tych wartości, zostanie ona automatycznie zmieniona natls1.2. Jeśli zasadamaxjest ustawiona na jedną z tych wartości lub inną nierozpoznaną wartość, zostanie ona zignorowana bez powiadomienia.
Metody
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
): Promise<void>
Zamyka gniazdo i zwalnia adres/port, z którym jest ono powiązane. Każde utworzone gniazdo powinno zostać zamknięte po użyciu. Identyfikator gniazda przestaje być ważny, gdy tylko funkcja zostanie wywołana. Gniazdo zostanie jednak zamknięte dopiero po wywołaniu funkcji zwrotnej.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
callback
function opcjonalne
Parametr
callbackwygląda tak:() => void
Zwroty
-
thought Promise<void>
Chrome 121 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
): void
Łączy gniazdo z komputerem zdalnym. Po pomyślnym zakończeniu operacji connect zdarzenia onReceive są wywoływane, gdy dane są odbierane od połączenia równorzędnego. Jeśli podczas odbierania pakietów przez środowisko wykonawcze wystąpi błąd sieci, zostanie wywołane zdarzenie onReceiveError. Od tego momentu nie będzie już wywoływane zdarzenie onReceive dla tego gniazda, dopóki nie zostanie wywołana metoda resume.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
peerAddress
tekst
Adres komputera zdalnego. Obsługiwane są nazwy DNS oraz formaty IPv4 i IPv6.
-
peerPort
liczba
Port komputera zdalnego.
-
dnsQueryType
DnsQueryType opcjonalne
Chrome 103 lub nowsza wersjaUstawienie rozpoznawania adresu.
-
callback
funkcja
Parametr
callbackwygląda tak:(result: number) => void
-
wynik
liczba
Kod wyniku zwrócony przez wywołanie sieciowe. Wartość ujemna oznacza błąd.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Tworzy gniazdo TCP.
Parametry
-
właściwości
SocketProperties opcjonalny
Właściwości gniazda (opcjonalnie).
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(createInfo: CreateInfo) => void
-
createInfo
Wynik utworzenia gniazda.
-
Zwroty
-
Promise<CreateInfo>
Chrome 121 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Rozłącza gniazdo.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
callback
function opcjonalne
Parametr
callbackwygląda tak:() => void
Zwroty
-
thought Promise<void>
Chrome 121 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Pobiera stan danego gniazda.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(socketInfo: SocketInfo) => void
-
socketInfo
Obiekt zawierający informacje o gnieździe.
-
Zwroty
-
Promise<SocketInfo>
Chrome 121 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Pobiera listę aktualnie otwartych gniazd należących do aplikacji.
Parametry
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(socketInfos: SocketInfo[]) => void
-
socketInfos
Tablica obiektów zawierających informacje o gnieździe.
-
Zwroty
-
Promise<SocketInfo[]>
Chrome 121 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
): void
Nawiąż połączenie klienta TLS przez połączone gniazdo klienta TCP.
Parametry
-
socketId
liczba
Istniejące, połączone gniazdo, którego chcesz użyć.
-
Opcje
SecureOptions opcjonalny
Ograniczenia i parametry połączenia TLS.
-
callback
funkcja
Parametr
callbackwygląda tak:(result: number) => void
-
wynik
liczba
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
): void
Wysyła dane przez podane gniazdo TCP.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
dane
ArrayBuffer
Dane do wysłania.
-
callback
funkcja
Parametr
callbackwygląda tak:(sendInfo: SendInfo) => void
-
sendInfo
Wynik metody
send.
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
): void
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, włącz funkcję utrzymywania połączenia.
-
opóźnienia
number optional
Ustaw opóźnienie w sekundach między ostatnim odebranym pakietem danych a pierwszą próbą utrzymania połączenia. Wartość domyślna to 0.
-
callback
funkcja
Parametr
callbackwygląda tak:(result: number) => void
-
wynik
liczba
Kod wyniku zwrócony przez wywołanie sieciowe. Wartość ujemna oznacza błąd.
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
): void
Ustawia lub usuwa TCP_NODELAY dla połączenia TCP. Gdy ustawiona jest wartość TCP_NODELAY, algorytm Nagle'a jest wyłączony.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
noDelay
wartość logiczna
Jeśli ma wartość Prawda, wyłącza algorytm Nagle'a.
-
callback
funkcja
Parametr
callbackwygląda tak:(result: number) => void
-
wynik
liczba
Kod wyniku zwrócony przez wywołanie sieciowe. Wartość ujemna oznacza błąd.
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Włącza lub wyłącza możliwość odbierania przez aplikację wiadomości od aplikacji równorzędnej. Wartość domyślna to „false”. Wstrzymanie gniazda jest zwykle używane przez aplikację do ograniczania danych wysyłanych przez jej odpowiednik. Gdy gniazdo jest wstrzymane, zdarzenie onReceive nie jest wywoływane. Gdy gniazdo jest połączone i nie jest wstrzymane, zdarzenia onReceive są ponownie wywoływane po odebraniu wiadomości.
Parametry
-
socketId
liczba
-
wstrzymana
wartość logiczna
-
callback
function opcjonalne
Parametr
callbackwygląda tak:() => void
Zwroty
-
thought Promise<void>
Chrome 121 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Aktualizuje właściwości gniazda.
Parametry
-
socketId
liczba
Identyfikator gniazda.
-
właściwości
Właściwości do zaktualizowania.
-
callback
function opcjonalne
Parametr
callbackwygląda tak:() => void
Zwroty
-
thought Promise<void>
Chrome 121 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
Wydarzenia
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
Zdarzenie wywoływane po odebraniu danych dla danego gniazda.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(info: ReceiveInfo) => void
-
informacje
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Zdarzenie wywoływane, gdy wystąpi błąd sieci, podczas gdy środowisko wykonawcze czeka na dane na adresie i porcie gniazda. Po wywołaniu tego zdarzenia gniazdo jest ustawiane na paused i nie są już wywoływane żadne zdarzenia onReceive dla tego gniazda.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(info: ReceiveErrorInfo) => void
-
informacje
-