Описание
 Используйте API chrome.sockets.tcpServer для создания серверных приложений, использующих TCP-подключения. Этот API заменяет функциональность TCP, ранее доступную в API chrome.socket .
Манифест
Типы
AcceptErrorInfo
Характеристики
- resultCodeчисло Код результата, возвращенный из базового сетевого вызова. 
- socketIdчисло Идентификатор сокета сервера. 
AcceptInfo
Характеристики
- clientSocketIdчисло Идентификатор клиентского сокета, т.е. идентификатор сокета вновь установленного соединения. Этот идентификатор сокета следует использовать только с функциями из пространства имён chrome.sockets.tcp. Обратите внимание, что клиентский сокет изначально приостановлен и должен быть явно снят с паузы приложением, чтобы начать получать данные.
- socketIdчисло Идентификатор сокета сервера. 
CreateInfo
Характеристики
- socketIdчисло Идентификатор вновь созданного серверного сокета. Обратите внимание, что идентификаторы сокетов, созданные с помощью этого API, несовместимы с идентификаторами сокетов, созданными с помощью других API, например, устаревшего API [socket](../socket/).
SocketInfo
Характеристики
- локальный адресстрока необязательная Если сокет прослушивается, содержит его локальный адрес IPv4/6. 
- локальный портномер необязательно Если сокет прослушивается, содержит его локальный порт. 
- имястрока необязательная Определенная приложением строка, связанная с сокетом. 
- приостановленобулев Флаг, указывающий, отправляются ли запросы на подключение к прослушиваемому сокету через событие onAcceptили помещаются в очередь ожидания. См.setPaused. Значение по умолчанию — «false».
- настойчивыйбулев Флаг, указывающий, остаётся ли сокет открытым при выгрузке страницы событий приложения (см. SocketProperties.persistent). Значение по умолчанию — «false».
- socketIdчисло Идентификатор сокета. 
SocketProperties
Характеристики
- имястрока необязательная Определенная приложением строка, связанная с сокетом. 
- настойчивыйлогическое необязательное Флаг, указывающий, остаётся ли сокет открытым при выгрузке страницы событий приложения (см. раздел Управление жизненным циклом приложения ). Значение по умолчанию — «false». После загрузки приложения все сокеты, ранее открытые с параметром persistent=true, можно получить с помощью getSockets.
Методы
close()
chrome.sockets.tcpServer.close(
socketId: number,
callback?: function,
): Promise<void>
Отключает и уничтожает сокет. Каждый созданный сокет должен быть закрыт после использования. Идентификатор сокета становится недействительным сразу после вызова функции. Однако сокет гарантированно закрывается только при вызове функции обратного вызова.
Параметры
- socketIdчисло Идентификатор сокета. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:() => void 
Возврат
- Обещание<void> Хром 121+- Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы. 
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Создает сокет TCP-сервера.
Параметры
- характеристикиSocketProperties необязательны Свойства сокета (необязательно). 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:(createInfo: CreateInfo) => void - createInfoРезультат создания сокета. 
 
Возврат
- Обещание< CreateInfo > Хром 121+- Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы. 
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
): Promise<void>
 Отключает прослушиваемый сокет, то есть прекращает приём новых соединений и освобождает адрес/порт, к которому привязан сокет. Идентификатор сокета остаётся действительным, например, его можно использовать с listen для приёма соединений на новом порту и адресе. 
Параметры
- socketIdчисло Идентификатор сокета. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:() => void 
Возврат
- Обещание<void> Хром 121+- Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы. 
getInfo()
chrome.sockets.tcpServer.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Возвращает состояние указанного сокета.
Параметры
- socketIdчисло Идентификатор сокета. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:(socketInfo: SocketInfo) => void - socketInfoОбъект, содержащий информацию о сокете. 
 
Возврат
- Обещание <SocketInfo> Хром 121+- Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы. 
getSockets()
chrome.sockets.tcpServer.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Возвращает список открытых в данный момент сокетов, принадлежащих приложению.
Параметры
- перезвонитьфункция необязательна Параметр callbackвыглядит так:(socketInfos: SocketInfo[]) => void - socketInfosSocketInfo [] Массив объектов, содержащий информацию о сокетах. 
 
Возврат
- Обещание< SocketInfo []> Хром 121+- Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы. 
listen()
chrome.sockets.tcpServer.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
): void
Прослушивает соединения по указанному порту и адресу. Если порт/адрес занят, обратный вызов сообщает об ошибке.
Параметры
- socketIdчисло Идентификатор сокета. 
- адреснить Адрес локальной машины. 
- портчисло Порт локальной машины. При значении 0свободный порт выбирается динамически. Динамически выделенный порт можно узнать, вызвавgetInfo.
- отставаниеномер необязательно Длина очереди прослушивания сокета. Значение по умолчанию зависит от операционной системы (SOMAXCONN), что обеспечивает разумную длину очереди для большинства приложений. 
- перезвонитьфункция Параметр callbackвыглядит так:(result: number) => void - результатчисло Код результата, возвращаемый базовым сетевым вызовом. Отрицательное значение указывает на ошибку. 
 
setPaused()
chrome.sockets.tcpServer.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
 Включает или отключает прием новых подключений прослушивающим сокетом. В состоянии паузы прослушивающий сокет принимает новые подключения до тех пор, пока его очередь (см. функцию listen ) не заполнится, после чего отклоняет дальнейшие запросы на подключение. События onAccept возникают только после возобновления работы сокета. 
Параметры
- socketIdчисло 
- приостановленобулев 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:() => void 
Возврат
- Обещание<void> Хром 121+- Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы. 
update()
chrome.sockets.tcpServer.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Обновляет свойства сокета.
Параметры
- socketIdчисло Идентификатор сокета. 
- характеристикиСвойства для обновления. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:() => void 
Возврат
- Обещание<void> Хром 121+- Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы. 
События
onAccept
chrome.sockets.tcpServer.onAccept.addListener(
callback: function,
)
Событие возникает при установлении соединения с сокетом сервера.
Параметры
- перезвонитьфункция Параметр callbackвыглядит так:(info: AcceptInfo) => void - информация
 
onAcceptError
chrome.sockets.tcpServer.onAcceptError.addListener(
callback: function,
)
 Событие возникает при возникновении сетевой ошибки во время ожидания средой выполнения новых подключений по адресу и порту сокета. После возникновения этого события сокет paused , и события onAccept для этого сокета больше не генерируются до тех пор, пока он не будет возобновлен. 
Параметры
- перезвонитьфункция Параметр callbackвыглядит так:(info: AcceptErrorInfo) => void - информация