Описание
Используйте 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
Возвраты
Обещание<пустота>
Chrome 121+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Создает TCP-сокет сервера.
Параметры
- характеристики
SocketProperties ( необязательно)
Свойства сокета (необязательно).
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:(createInfo: CreateInfo) => void
- создатьИнформацию
Результат создания сокета.
Возвраты
Promise <CreateInfo>
Chrome 121+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Отключает прослушивающий сокет, то есть прекращает прием новых соединений и освобождает адрес/порт, к которому привязан сокет. Идентификатор сокета остается действительным, например, его можно использовать с listen для приема соединений на новом порту и адресе.
Параметры
- socketId
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 121+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
getInfo()
chrome.sockets.tcpServer.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Получает состояние заданного сокета.
Параметры
- socketId
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:(socketInfo: SocketInfo) => void
- socketInfo
Объект, содержащий информацию о сокете.
Возвраты
Promise <SocketInfo>
Chrome 121+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
getSockets()
chrome.sockets.tcpServer.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Получает список открытых в данный момент сокетов, принадлежащих приложению.
Параметры
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:(socketInfos: SocketInfo[]) => void
- socketInfos
SocketInfo []
Массив объектов, содержащих информацию о сокете.
Возвраты
Promise< SocketInfo []>
Chrome 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
Возвраты
Обещание<пустота>
Chrome 121+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
update()
chrome.sockets.tcpServer.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Обновляет свойства сокета.
Параметры
- socketId
число
Идентификатор сокета.
- характеристики
Свойства, которые необходимо обновить.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 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
- информация