Описание
Используйте API chrome.sockets.tcp для отправки и получения данных по сети с использованием TCP-соединений. Этот API заменяет функциональность TCP, ранее доступную в API chrome.socket .
Манифест
Типы
CreateInfo
Характеристики
- socketId
число
Идентификатор вновь созданного сокета. Обратите внимание, что идентификаторы сокетов, созданные с помощью этого API, несовместимы с идентификаторами сокетов, созданными с помощью других API, например, устаревшего API
[socket](../socket/).
DnsQueryType
Настройки разрешения DNS. Значение по умолчанию — any , используется текущая конфигурация ОС, которая может возвращать IPv4 или IPv6. ipv4 принудительно использует IPv4, а ipv6 принудительно использует IPv6.
Перечисление
"любой" "ipv4" "ipv6"
ReceiveErrorInfo
Характеристики
- resultCode
число
Код результата, возвращенный из базового сетевого вызова.
- socketId
число
Идентификатор сокета.
ReceiveInfo
Характеристики
- данные
ArrayBuffer
Полученные данные имеют максимальный размер
bufferSize. - socketId
число
Идентификатор сокета.
SecureOptions
Характеристики
- tlsVersion
TLSVersionConstraints (необязательно)
SendInfo
Характеристики
- байтыОтправлено
номер необязательно
Количество отправленных байтов (если результат == 0)
- resultCode
число
Код результата, возвращаемый базовым сетевым вызовом. Отрицательное значение указывает на ошибку.
SocketInfo
Характеристики
- Размер буфера
номер необязательно
Размер буфера, используемого для получения данных. Если размер буфера не указан явно, значение не предоставляется.
- подключен
булев
Флаг, указывающий, подключен ли сокет к удаленному узлу.
- локальный адрес
строка необязательная
Если базовый сокет подключен, содержит его локальный адрес IPv4/6.
- локальный порт
номер необязательно
Если базовый сокет подключен, содержит его локальный порт.
- имя
строка необязательная
Определенная приложением строка, связанная с сокетом.
- приостановлено
булев
Флаг, указывающий, блокирует ли подключенный сокет отправку данных своему одноранговому узлу (см.
setPaused). - peerAddress
строка необязательная
Если базовый сокет подключен, содержит адрес однорангового узла/IPv4/6.
- peerPort
номер необязательно
Если базовый сокет подключен, содержит порт однорангового узла.
- настойчивый
булев
Флаг, указывающий, остается ли сокет открытым при приостановке приложения (см.
SocketProperties.persistent). - socketId
число
Идентификатор сокета.
SocketProperties
Характеристики
- Размер буфера
номер необязательно
Размер буфера, используемого для получения данных. Значение по умолчанию — 4096.
- имя
строка необязательная
Определенная приложением строка, связанная с сокетом.
- настойчивый
логическое необязательное
Флаг, указывающий, остаётся ли сокет открытым при выгрузке страницы событий приложения (см. раздел Управление жизненным циклом приложения ). Значение по умолчанию — «false». После загрузки приложения все сокеты, ранее открытые с параметром persistent=true, можно получить с помощью
getSockets.
TLSVersionConstraints
Характеристики
- макс
строка необязательная
- мин
строка необязательная
Минимально и максимально допустимые версии TLS. Поддерживаемые значения:
tls1.2илиtls1.3.Значения
tls1иtls1.1больше не поддерживаются. Еслиminравен одному из этих значений, он будет автоматически ограничен значениемtls1.2. Еслиmaxравен одному из этих значений или любому другому нераспознанному значению, он будет автоматически проигнорирован.
Методы
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
): Promise<void>
Закрывает сокет и освобождает адрес/порт, к которому он привязан. Каждый созданный сокет должен быть закрыт после использования. Идентификатор сокета становится действительным с момента вызова функции. Однако сокет гарантированно закрывается только при вызове обратного вызова.
Параметры
- socketId
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callbackвыглядит так:() => void
Возврат
Обещание<void>
Хром 121+Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
): void
Подключает сокет к удалённому компьютеру. После успешного завершения операции connect при получении данных от одноранговой машины возникают события onReceive . Если во время получения пакетов средой выполнения происходит сетевая ошибка, возникает событие onReceiveError , после чего событие onReceive для этого сокета больше не будет возникать до вызова метода resume .
Параметры
- socketId
число
Идентификатор сокета.
- peerAddress
нить
Адрес удаленного компьютера. Поддерживаются форматы DNS-имени, IPv4 и IPv6.
- peerPort
число
Порт удаленной машины.
- dnsQueryType
DnsQueryType необязательно
Хром 103+Предпочтение разрешения адреса.
- перезвонить
функция
Параметр
callbackвыглядит так:(result: number) => void
- результат
число
Код результата, возвращаемый базовым сетевым вызовом. Отрицательное значение указывает на ошибку.
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Создает TCP-сокет.
Параметры
- характеристики
SocketProperties необязательны
Свойства сокета (необязательно).
- перезвонить
функция необязательна
Параметр
callbackвыглядит так:(createInfo: CreateInfo) => void
- createInfo
Результат создания сокета.
Возврат
Обещание< CreateInfo >
Хром 121+Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Отсоединяет розетку.
Параметры
- socketId
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callbackвыглядит так:() => void
Возврат
Обещание<void>
Хром 121+Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Возвращает состояние указанного сокета.
Параметры
- socketId
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callbackвыглядит так:(socketInfo: SocketInfo) => void
- socketInfo
Объект, содержащий информацию о сокете.
Возврат
Обещание <SocketInfo>
Хром 121+Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Возвращает список открытых в данный момент сокетов, принадлежащих приложению.
Параметры
- перезвонить
функция необязательна
Параметр
callbackвыглядит так:(socketInfos: SocketInfo[]) => void
- socketInfos
SocketInfo []
Массив объектов, содержащий информацию о сокетах.
Возврат
Обещание< SocketInfo []>
Хром 121+Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
): void
Запустите клиентское соединение TLS через подключенный клиентский сокет TCP.
Параметры
- socketId
число
Существующая подключенная розетка для использования.
- параметры
SecureOptions необязательно
Ограничения и параметры TLS-соединения.
- перезвонить
функция
Параметр
callbackвыглядит так:(result: number) => void
- результат
число
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
): void
Отправляет данные на указанный TCP-сокет.
Параметры
- socketId
число
Идентификатор сокета.
- данные
ArrayBuffer
Данные для отправки.
- перезвонить
функция
Параметр
callbackвыглядит так:(sendInfo: SendInfo) => void
- sendInfo
Результат метода
send.
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
): void
Включает или выключает функцию поддержания активности TCP-соединения.
Параметры
- socketId
число
Идентификатор сокета.
- давать возможность
булев
Если да, включите функцию поддержания активности.
- задерживать
номер необязательно
Установите задержку в секундах между последним полученным пакетом данных и первым запросом keepalive. Значение по умолчанию — 0.
- перезвонить
функция
Параметр
callbackвыглядит так:(result: number) => void
- результат
число
Код результата, возвращаемый базовым сетевым вызовом. Отрицательное значение указывает на ошибку.
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
): void
Устанавливает или сбрасывает TCP_NODELAY для TCP-соединения. Алгоритм Нейгла будет отключен при установке TCP_NODELAY .
Параметры
- socketId
число
Идентификатор сокета.
- noDelay
булев
Если true, отключает алгоритм Нейгла.
- перезвонить
функция
Параметр
callbackвыглядит так:(result: number) => void
- результат
число
Код результата, возвращаемый базовым сетевым вызовом. Отрицательное значение указывает на ошибку.
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Разрешает или запрещает приложению получать сообщения от однорангового узла. Значение по умолчанию — «false». Приостановка сокета обычно используется приложением для ограничения объема данных, отправляемых одноранговым узлом. При приостановке сокета событие onReceive не возникает. Когда сокет подключен и снят с паузы, события onReceive возникают снова при получении сообщений.
Параметры
- socketId
число
- приостановлено
булев
- перезвонить
функция необязательна
Параметр
callbackвыглядит так:() => void
Возврат
Обещание<void>
Хром 121+Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Обновляет свойства сокета.
Параметры
- socketId
число
Идентификатор сокета.
- характеристики
Свойства для обновления.
- перезвонить
функция необязательна
Параметр
callbackвыглядит так:() => void
Возврат
Обещание<void>
Хром 121+Обещания поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
События
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
Событие возникает при получении данных для заданного сокета.
Параметры
- перезвонить
функция
Параметр
callbackвыглядит так:(info: ReceiveInfo) => void
- информация
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Событие возникает при возникновении сетевой ошибки во время ожидания средой выполнения данных по адресу и порту сокета. После возникновения этого события сокет paused , и события onReceive для этого сокета больше не генерируются.
Параметры
- перезвонить
функция
Параметр
callbackвыглядит так:(info: ReceiveErrorInfo) => void
- информация