chrome.sockets.tcp

Opis

Używaj interfejsu chrome.sockets.tcp API do wysyłania i odbierania danych w sieci przez połączenia TCP. Ten interfejs API zastępuje funkcję TCP, która wcześniej była dostępna w interfejsie chrome.socket API.

Plik manifestu

Aby można było używać tego interfejsu API, następujące klucze muszą być zadeklarowane w pliku manifestu.

"sockets"

Typy

CreateInfo

Właściwości

  • socketId

    Liczba

    Identyfikator nowo utworzonego gniazda. Identyfikatory gniazd utworzone za pomocą tego interfejsu API są niezgodne z identyfikatorami gniazd utworzonymi za pomocą innych interfejsów API, takich jak wycofany interfejs [socket](../socket/) API.

DnsQueryType

Chrome 103 i nowsze wersje

Ustawienia rozpoznawania nazw DNS. Wartość domyślna to any i używana jest bieżąca konfiguracja systemu operacyjnego, która może zwracać adres IPv4 lub IPv6. ipv4 wymusza adres IPv4, a ipv6 wymusza adres IPv6.

Enum

„ipv4”

„ipv6”

ReceiveErrorInfo

Właściwości

  • resultCode

    Liczba

    Kod wyniku zwrócony przez bazowe wywołanie sieciowe.

  • socketId

    Liczba

    Identyfikator gniazda.

ReceiveInfo

Właściwości

  • dane

    ArrayBuffer

    Dane zostały odebrane, maksymalny rozmiar to bufferSize.

  • socketId

    Liczba

    Identyfikator gniazda.

SecureOptions

Właściwości

SendInfo

Właściwości

  • bytesSent

    Liczba opcjonalnie

    Liczba wysłanych bajtów (jeśli wynik == 0)

  • resultCode

    Liczba

    Kod wyniku zwrócony przez bazowe wywołanie sieciowe. Wartość ujemna oznacza błąd.

SocketInfo

Właściwości

  • bufferSize

    Liczba opcjonalnie

    Rozmiar bufora używanego do odbierania danych. Jeśli rozmiar bufora nie zostanie wyraźnie określony, wartość nie zostanie podana.

  • Połączono

    boolean

    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 jego port lokalny.

  • nazwa

    ciąg znaków opcjonalny

    Ciąg znaków zdefiniowany przez aplikację powiązany z gniazdem.

  • wstrzymane

    boolean

    Flaga z informacją, czy podłączone gniazdo blokuje połączenie równorzędne przed wysyłaniem większej ilości danych (patrz: setPaused).

  • peerAddress

    ciąg znaków opcjonalny

    Jeśli bazowe gniazdo jest połączone, zawiera adres peer/ adres IPv4/6.

  • peerPort

    Liczba opcjonalnie

    Jeśli podstawowe gniazdo jest podłączone, zawiera port równorzędny.

  • trwałe

    boolean

    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ść domyślna to 4096.

  • nazwa

    ciąg znaków opcjonalny

    Zdefiniowany przez aplikację ciąg znaków powiązany z gniazdem.

  • trwałe

    wartość logiczna opcjonalna

    Flaga wskazująca, czy gniazdo jest otwarte po wyładowaniu strony zdarzenia aplikacji (patrz Zarządzanie cyklem życia aplikacji). Wartość domyślna to „false”. Podczas wczytywania aplikacji wszystkie gniazda otwarte wcześniej z parametrem trwałym=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 akceptowalna wersja protokołu TLS. Obsługiwane wartości to tls1.2 lub tls1.3.

    Wartości tls1 i tls1.1 nie są już obsługiwane. Jeśli zasada min ma ustawioną jedną z tych wartości, zostanie dyskretnie ograniczona do tls1.2. Jeśli max jest ustawiony na jedną z tych wartości lub dowolną inną nierozpoznaną wartość, zostanie dyskretnie zignorowana.

Metody

close()

Obietnica
chrome.sockets.tcp.close(
  socketId: number,
  callback?: function,
)

Zamyka gniazdo i zwalnia adres lub port, z którym jest powiązane. Każde utworzone gniazdo powinno zostać zamknięte po użyciu. Identyfikator gniazda nie jest już prawidłowy od razu po wywołaniu funkcji. Gwarantujemy jednak zamknięcie gniazda tylko po wywołaniu wywołania zwrotnego.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Akcje powrotne

  • Promise<void>

    Chrome 121 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. 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 gniazdka do komputera zdalnego. Gdy operacja connect zakończy się powodzeniem, po odebraniu danych z peera wywoływane są zdarzenia onReceive. Jeśli podczas odbierania pakietów w środowisku wykonawczym wystąpi błąd sieci, zostanie zainicjowane zdarzenie onReceiveError. Od tego momentu dla tego gniazda nie będzie już wywoływane zdarzenie onReceive, dopóki nie zostanie wywołana metoda resume.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • peerAddress

    string,

    Adres komputera zdalnego. Obsługiwane są formaty nazw DNS oraz IPv4 i IPv6.

  • peerPort

    Liczba

    Port komputera zdalnego.

  • dnsQueryType

    Opcjonalny DnsQueryType

    Chrome 103 i nowsze wersje

    Preferencje dotyczące rozpoznawania adresu.

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (result: number)=>void

    • wynik

      Liczba

      Kod wyniku zwrócony przez bazowe wywołanie sieciowe. Wartość ujemna oznacza błąd.

create()

Obietnica
chrome.sockets.tcp.create(
  properties?: SocketProperties,
  callback?: function,
)

Tworzy gniazdo TCP.

Parametry

  • usługi

    SocketProperties opcjonalne

    Właściwości gniazda (opcjonalne).

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (createInfo: CreateInfo)=>void

Akcje powrotne

  • Promise<CreateInfo>

    Chrome 121 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

disconnect()

Obietnica
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)

Odłącza gniazdko.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Akcje powrotne

  • Promise<void>

    Chrome 121 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

getInfo()

Obietnica
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)

Pobiera stan danego gniazda.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (socketInfo: SocketInfo)=>void

    • socketInfo

      Obiekt zawierający informacje o gnieździe.

Akcje powrotne

  • Promise<SocketInfo>

    Chrome 121 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

getSockets()

Obietnica
chrome.sockets.tcp.getSockets(
  callback?: function,
)

Pobiera listę obecnie otwartych gniazd należących do aplikacji.

Parametry

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (socketInfos: SocketInfo[])=>void

    • socketInfos

      Tablica obiektów z informacjami o gniazdach.

Akcje powrotne

  • Promise<SocketInfo[]>

    Chrome 121 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

secure()

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

Uruchom połączenie z klientem TLS przez podłączone gniazdo klienta TCP.

Parametry

  • socketId

    Liczba

    Obecne podłączone gniazdko do użycia.

  • Opcje

    Opcjonalny 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 na danym gnieździe TCP.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • dane

    ArrayBuffer

    Dane do wysłania.

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (sendInfo: SendInfo)=>void

setKeepAlive()

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

Włącza lub wyłącza funkcję utrzymywania aktywności dla połączenia TCP.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • enable

    boolean

    Jeśli ma wartość prawda, włącz funkcję utrzymywania aktywności.

  • opóźnienia

    Liczba opcjonalnie

    Ustaw liczbę sekund opóźnienia między ostatnim odebranym pakietem danych a pierwszą sondą utrzymującą aktywność. Wartość domyślna to 0.

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (result: number)=>void

    • wynik

      Liczba

      Kod wyniku zwrócony przez bazowe wywołanie sieciowe. Wartość ujemna oznacza błąd.

setNoDelay()

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

Ustawia lub czyści TCP_NODELAY dla połączenia TCP. Algorytm Nagle zostanie wyłączony, gdy ustawiona jest wartość TCP_NODELAY.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • noDelay

    boolean

    Jeśli ma wartość prawda, wyłącza algorytm Nagle.

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (result: number)=>void

    • wynik

      Liczba

      Kod wyniku zwrócony przez bazowe wywołanie sieciowe. Wartość ujemna oznacza błąd.

setPaused()

Obietnica
chrome.sockets.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

Włącza lub wyłącza możliwość odbierania przez aplikację wiadomości od peera. Wartość domyślna to „false”. Wstrzymanie gniazda jest zwykle stosowane przez aplikację do ograniczania ilości danych wysyłanych przez jej połączenie równorzędne. Gdy gniazdo jest wstrzymane, nie jest wywoływane żadne zdarzenie onReceive. Po podłączeniu gniazdka i wznowieniu jego działania zdarzenia onReceive zostaną podniesione ponownie po odebraniu wiadomości.

Parametry

  • socketId

    Liczba

  • wstrzymane

    boolean

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Akcje powrotne

  • Promise<void>

    Chrome 121 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

update()

Obietnica
chrome.sockets.tcp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

Aktualizuje właściwości gniazda.

Parametry

  • socketId

    Liczba

    Identyfikator gniazda.

  • Właściwości do zaktualizowania.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Akcje powrotne

  • Promise<void>

    Chrome 121 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

Wydarzenia

onReceive

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

Zdarzenie wywoływane po odebraniu danych z danego gniazda.

Parametry

onReceiveError

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

Zdarzenie zgłaszane, gdy wystąpił błąd sieci, gdy środowisko wykonawcze czekało na dane na podstawie adresu gniazda i portu. Po podniesieniu tego zdarzenia gniazdo jest ustawione na paused i nie jest już wywoływane to zdarzenie onReceive.

Parametry