Opis
Interfejs API chrome.sockets.tcpServer
umożliwia tworzenie aplikacji serwerowych przy użyciu połączeń 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
AcceptErrorInfo
Właściwości
-
resultCode
Liczba
Kod wyniku zwrócony przez bazowe wywołanie sieciowe.
-
socketId
Liczba
Identyfikator gniazda serwera.
AcceptInfo
Właściwości
-
clientSocketId
Liczba
Identyfikator gniazda klienta, tj. identyfikator gniazda nowo nawiązanego połączenia. Tego identyfikatora gniazda należy używać tylko w przypadku funkcji z przestrzeni nazw
chrome.sockets.tcp
. Pamiętaj, że gniazdo klienta jest początkowo wstrzymane i aplikacja musi je wyraźnie wznowić, by odbierać dane. -
socketId
Liczba
Identyfikator gniazda serwera.
CreateInfo
Właściwości
-
socketId
Liczba
Identyfikator nowo utworzonego gniazda serwera. 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.
SocketInfo
Właściwości
-
localAddress
ciąg znaków opcjonalny
Jeśli gniazdo nasłuchuje, zawiera swój lokalny adres IPv4/6.
-
localPort
Liczba opcjonalnie
Jeśli gniazdo nasłuchuje, zawiera port lokalny.
-
nazwa
ciąg znaków opcjonalny
Ciąg znaków zdefiniowany przez aplikację powiązany z gniazdem.
-
wstrzymane
boolean
Flaga wskazująca, czy żądania połączenia z gniazda nasłuchu są wysyłane za pomocą zdarzenia
onAccept
czy umieszczane w kolejce w zaległościach kolejki nasłuchiwania. ZobaczsetPaused
. Wartość domyślna to „false”. -
trwałe
boolean
Flaga wskazująca, czy gniazdo pozostaje otwarte po wyładowaniu strony zdarzenia aplikacji (patrz:
SocketProperties.persistent
). Wartość domyślna to „false”. -
socketId
Liczba
Identyfikator gniazda.
SocketProperties
Właściwości
-
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 pozostaje 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
.
Metody
close()
chrome.sockets.tcpServer.close(
socketId: number,
callback?: function,
)
Odłącza i niszczy gniazdo. 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 wersjeObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
)
Tworzy gniazdo serwera 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
-
createInfo
Wynik utworzenia gniazda.
-
Akcje powrotne
-
Promise<CreateInfo>
Chrome 121 i nowsze wersjeObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
)
Odłącza gniazdo nasłuchujące, tj. przestaje akceptować nowe połączenia i zwalnia adres/port, z którym jest powiązane. Identyfikator gniazda pozostaje prawidłowy, np. można go używać z listen
do akceptowania połączeń na nowym porcie i nowym adresie.
Parametry
-
socketId
Liczba
Identyfikator gniazda.
-
wywołanie zwrotne
funkcja opcjonalnie
Parametr
callback
wygląda tak:() => void
Akcje powrotne
-
Promise<void>
Chrome 121 i nowsze wersjeObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.
getInfo()
chrome.sockets.tcpServer.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 wersjeObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.
getSockets()
chrome.sockets.tcpServer.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 wersjeObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.
listen()
chrome.sockets.tcpServer.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
)
Wykrywa połączenia na określonym porcie i adresie. Jeśli port lub adres są używane, wywołanie zwrotne wskazuje na błąd.
Parametry
-
socketId
Liczba
Identyfikator gniazda.
-
adres
string,
Adres komputera lokalnego.
-
port
Liczba
Port komputera lokalnego. Gdy ma wartość
0
, wolny port jest wybierany dynamicznie. Dynamicznie alokowany port można znaleźć, wywołującgetInfo
. -
zaległości
Liczba opcjonalnie
Długość kolejki nasłuchiwania gniazda. Wartość domyślna zależy od systemu operacyjnego (SOMAXCONN), co zapewnia rozsądną długość kolejki dla większości aplikacji.
-
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()
chrome.sockets.tcpServer.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Włącza lub wyłącza akceptowanie nowych połączeń przez gniazdo nasłuchujące. Wstrzymane gniazdo nasłuchujące przyjmuje nowe połączenia, dopóki jego zaległości (patrz funkcja listen
) nie zostaną zapełnione, a następnie odrzuca dodatkowe żądania połączenia. Zdarzenia onAccept
są podnoszone tylko wtedy, gdy gniazdo zostanie wznowione.
Parametry
-
socketId
Liczba
-
wstrzymane
boolean
-
wywołanie zwrotne
funkcja opcjonalnie
Parametr
callback
wygląda tak:() => void
Akcje powrotne
-
Promise<void>
Chrome 121 i nowsze wersjeObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.
update()
chrome.sockets.tcpServer.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 opcjonalnie
Parametr
callback
wygląda tak:() => void
Akcje powrotne
-
Promise<void>
Chrome 121 i nowsze wersjeObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. 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
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(info: AcceptInfo) => void
-
informacje
-
onAcceptError
chrome.sockets.tcpServer.onAcceptError.addListener(
callback: function,
)
Zdarzenie to zostało zgłoszone, gdy wystąpił błąd sieci, gdy środowisko wykonawcze czekało na nowe połączenia na podstawie adresu gniazda i portu. Po podniesieniu tego zdarzenia gniazdo jest ustawione na paused
i do czasu jego wznowienia nie będą wywoływane żadne zdarzenia onAccept
.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(info: AcceptErrorInfo) => void
-
informacje
-