chrome.sockets.tcpServer

Opis

Użyj interfejsu chrome.sockets.tcpServer API, aby tworzyć aplikacje serwerowe korzystające z połączeń TCP. Ten interfejs API zastępuje funkcję TCP, która była wcześniej dostępna w interfejsie chrome.socket API.

Plik manifestu

Aby korzystać z tego interfejsu API, musisz zadeklarować te klucze w pliku manifestu.

"sockets"

Typy

AcceptErrorInfo

Właściwości

  • resultCode

    liczba

    Kod wyniku zwrócony z wywołania sieciowego.

  • socketId

    liczba

    Identyfikator gniazda serwera.

AcceptInfo

Właściwości

  • clientSocketId

    liczba

    Identyfikator gniazda klienta, czyli identyfikator gniazda nowo utworzonego połączenia. Ten identyfikator gniazda powinien być używany tylko z funkcjami z przestrzeni nazw chrome.sockets.tcp. Pamiętaj, że gniazdo klienta jest początkowo wstrzymane i musi zostać wyraźnie odblokowane przez aplikację, aby rozpocząć odbieranie danych.

  • socketId

    liczba

    Identyfikator gniazda serwera.

CreateInfo

Właściwości

  • socketId

    liczba

    Identyfikator nowo utworzonego gniazda serwera. Pamiętaj, że identyfikatory gniazd utworzone za pomocą tego interfejsu API nie są zgodne z identyfikatorami gniazd utworzonymi za pomocą innych interfejsów API, np. wycofanego interfejsu [socket](../socket/) API.

SocketInfo

Właściwości

  • localAddress

    string opcjonalny

    Jeśli gniazdo nasłuchuje, zawiera lokalny adres IPv4/6.

  • localPort

    number opcjonalny

    Jeśli gniazdo nasłuchuje, zawiera swój port lokalny.

  • nazwa

    string opcjonalny

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

  • wstrzymana

    Wartość logiczna

    Flaga wskazująca, czy żądania połączenia na gnieździe nasłuchującym są wysyłane za pomocą zdarzenia onAccept, czy umieszczane w kolejce nasłuchiwania. Zobacz setPaused. Wartość domyślna to „false”.

  • trwałe,

    Wartość logiczna

    Flaga wskazująca, czy gniazdo pozostaje otwarte po zamknięciu strony zdarzenia aplikacji (patrz SocketProperties.persistent). Wartość domyślna to „false”.

  • socketId

    liczba

    Identyfikator gniazda.

SocketProperties

Właściwości

  • nazwa

    string opcjonalny

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

  • trwałe,

    wartość logiczna opcjonalna

    Flaga wskazująca, czy gniazdo pozostaje otwarte po zamknięciu strony zdarzenia aplikacji (patrz Zarządzanie cyklem życia aplikacji). Wartość domyślna to „false”. Po załadowaniu aplikacji można pobrać wszystkie gniazda otwarte wcześniej z ustawieniem persistent=true za pomocą funkcji getSockets.

Metody

close()

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

Rozłącza i niszczy gniazdo. Każde utworzone gniazdo powinno zostać zamknięte po użyciu. Identyfikator gniazda przestaje być ważny natychmiast po wywołaniu funkcji. Gniazdo jest jednak zamykane dopiero po wywołaniu funkcji zwrotnej.

Parametry

  • socketId

    liczba

    Identyfikator gniazda.

  • callback

    funkcja opcjonalna

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Promise<void>

    Chrome 121 lub nowsza

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

create()

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

Tworzy gniazdo serwera TCP.

Parametry

  • usługi

    SocketProperties opcjonalny

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

  • callback

    funkcja opcjonalna

    Parametr callback wygląda tak:

    (createInfo: CreateInfo) => void

Zwroty

  • Promise<CreateInfo>

    Chrome 121 lub nowsza

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

disconnect()

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

Odłącza gniazdo nasłuchujące, czyli przestaje akceptować nowe połączenia i zwalnia adres/port, do którego jest przypisane. Identyfikator gniazda pozostaje ważny, np. można go użyć z listen, aby akceptować połączenia na nowym porcie i adresie.

Parametry

  • socketId

    liczba

    Identyfikator gniazda.

  • callback

    funkcja opcjonalna

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Promise<void>

    Chrome 121 lub nowsza

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

getInfo()

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

Pobiera stan danego gniazda.

Parametry

  • socketId

    liczba

    Identyfikator gniazda.

  • callback

    funkcja opcjonalna

    Parametr callback wygląda tak:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Obiekt zawierający informacje o gnieździe.

Zwroty

  • Promise<SocketInfo>

    Chrome 121 lub nowsza

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

getSockets()

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

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

Parametry

  • callback

    funkcja opcjonalna

    Parametr callback wygląda tak:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Tablica obiektów zawierających informacje o gnieździe.

Zwroty

  • Promise<SocketInfo[]>

    Chrome 121 lub nowsza

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

listen()

chrome.sockets.tcpServer.listen(
  socketId: number,
  address: string,
  port: number,
  backlog?: number,
  callback: function,
)
: void

Nasłuchuje połączeń na określonym porcie i adresie. Jeśli port lub adres jest używany, wywołanie zwrotne wskazuje błąd.

Parametry

  • socketId

    liczba

    Identyfikator gniazda.

  • adres

    ciąg znaków

    Adres urządzenia lokalnego.

  • port

    liczba

    Port komputera lokalnego. Jeśli ustawisz tę opcję na 0, port zostanie wybrany dynamicznie. Dynamicznie przydzielony port można znaleźć, wywołując getInfo.

  • backlog

    number opcjonalny

    Długość kolejki nasłuchiwania gniazda. Wartość domyślna zależy od systemu operacyjnego (SOMAXCONN), co zapewnia odpowiednią długość kolejki w przypadku większości aplikacji.

  • callback

    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()

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

Włącza lub wyłącza gniazdo nasłuchujące, aby nie akceptowało nowych połączeń. Gdy gniazdo nasłuchujące jest wstrzymane, akceptuje nowe połączenia, dopóki jego kolejka (patrz funkcja listen) nie zostanie zapełniona, a potem odrzuca dodatkowe żądania połączenia. Zdarzenia onAccept są wywoływane tylko wtedy, gdy gniazdo nie jest wstrzymane.

Parametry

  • socketId

    liczba

  • wstrzymana

    Wartość logiczna

  • callback

    funkcja opcjonalna

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Promise<void>

    Chrome 121 lub nowsza

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

update()

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

Aktualizuje właściwości gniazda.

Parametry

  • socketId

    liczba

    Identyfikator gniazda.

  • Właściwości do zaktualizowania.

  • callback

    funkcja opcjonalna

    Parametr callback wygląda tak:

    () => void

Zwroty

  • Promise<void>

    Chrome 121 lub nowsza

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

Wydarzenia

onAccept

chrome.sockets.tcpServer.onAccept.addListener(
  callback: function,
)

Zdarzenie wywoływane po nawiązaniu połączenia z gniazdem serwera.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (info: AcceptInfo) => void

onAcceptError

chrome.sockets.tcpServer.onAcceptError.addListener(
  callback: function,
)

Zdarzenie wywoływane, gdy podczas oczekiwania środowiska wykonawczego na nowe połączenia na adresie gniazda i porcie wystąpi błąd sieci. Po wywołaniu tego zdarzenia gniazdo jest ustawiane na paused i nie są wywoływane żadne kolejne zdarzenia onAccept dla tego gniazda, dopóki nie zostanie ono wznowione.

Parametry