chrome.sockets.tcp

Описание

Используйте API chrome.sockets.tcp для отправки и получения данных по сети с использованием TCP-соединений. Этот API заменяет функциональность TCP, ранее имевшуюся в API chrome.socket .

Манифест

Для использования этого API в манифесте необходимо объявить следующие ключи.

"sockets"

Типы

CreateInfo

Характеристики

  • идентификатор сокета

    число

    Идентификатор вновь созданного сокета. Обратите внимание, что идентификаторы сокетов, созданные с помощью этого API, несовместимы с идентификаторами сокетов, созданными с помощью других API, например устаревшего API [ ocket ](../socket/) .

DnsQueryType

Хром 103+

Настройки разрешения DNS. По умолчанию используется any , используется текущая конфигурация ОС, которая может возвращать IPv4 или IPv6. ipv4 принудительно применяет IPv4, а ipv6 принудительно применяет IPv6.

Перечисление

"любой"

"ipv4"

"ipv6"

ReceiveErrorInfo

Характеристики

  • код результата

    число

    Код результата, возвращенный базовым сетевым вызовом.

  • идентификатор сокета

    число

    Идентификатор сокета.

ReceiveInfo

Характеристики

  • данные

    МассивБуфер

    Полученные данные с максимальным размером bufferSize .

  • идентификатор сокета

    число

    Идентификатор сокета.

SecureOptions

Характеристики

SendInfo

Характеристики

  • байтОтправлено

    номер необязательно

    Количество отправленных байт (если результат == 0)

  • код результата

    число

    Код результата, возвращенный базовым сетевым вызовом. Отрицательное значение указывает на ошибку.

SocketInfo

Характеристики

  • размер буфера

    номер необязательно

    Размер буфера, используемого для приема данных. Если размер буфера не указан явно, значение не предоставляется.

  • связанный

    логическое значение

    Флаг, указывающий, подключен ли сокет к удаленному узлу.

  • локальныйадрес

    строка необязательна

    Если базовый сокет подключен, он содержит его локальный адрес IPv4/6.

  • локальный порт

    номер необязательно

    Если базовый сокет подключен, содержит его локальный порт.

  • имя

    строка необязательна

    Определяемая приложением строка, связанная с сокетом.

  • остановился

    логическое значение

    Флаг, указывающий, блокирует ли подключенный сокет своему узлу отправку дополнительных данных (см. setPaused ).

  • адрес сверстника

    строка необязательна

    Если базовый сокет подключен, он содержит адрес узла/IPv4/6.

  • одноранговый порт

    номер необязательно

    Если базовый сокет подключен, он содержит одноранговый порт.

  • настойчивый

    логическое значение

    Флаг, указывающий, остается ли сокет открытым, когда приложение приостановлено (см. SocketProperties.persistent ).

  • идентификатор сокета

    число

    Идентификатор сокета.

SocketProperties

Характеристики

  • размер буфера

    номер необязательно

    Размер буфера, используемого для приема данных. Значение по умолчанию — 4096.

  • имя

    строка необязательна

    Определяемая приложением строка, связанная с сокетом.

  • настойчивый

    логическое значение необязательно

    Флаг, указывающий, остается ли сокет открытым при выгрузке страницы событий приложения (см. Управление жизненным циклом приложения ). Значение по умолчанию неверно." Когда приложение загружается, любые сокеты, ранее открытые с параметром persist=true, можно получить с помощью getSockets .

TLSVersionConstraints

Характеристики

  • Макс

    строка необязательна

  • мин

    строка необязательна

    Минимальная и максимально допустимая версии TLS. Поддерживаемые значения: tls1.2 или tls1.3 .

    Значения tls1 и tls1.1 больше не поддерживаются. Если min установлено одно из этих значений, оно будет автоматически ограничено значением tls1.2 . Если для max установлено одно из этих значений или любое другое неизвестное значение, оно будет игнорироваться.

Методы

close()

Обещать
chrome.sockets.tcp.close(
  socketId: number,
  callback?: function,
)

Закрывает сокет и освобождает адрес/порт, к которому привязан сокет. Каждый созданный сокет должен быть закрыт после использования. Идентификатор сокета больше не действителен при вызове функции. Однако сокет гарантированно закроется только при вызове обратного вызова.

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 121+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

connect()

chrome.sockets.tcp.connect(
  socketId: number,
  peerAddress: string,
  peerPort: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)

Подключает сокет к удаленному компьютеру. Когда операция connect завершается успешно, события onReceive возникают при получении данных от узла. Если возникает сетевая ошибка во время приема пакетов средой выполнения, возникает событие onReceiveError , после чего событие onReceive для этого сокета больше не будет вызываться до тех пор, пока не будет вызван метод resume .

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • адрес сверстника

    нить

    Адрес удаленной машины. Поддерживаются DNS-имя, форматы IPv4 и IPv6.

  • одноранговый порт

    число

    Порт удаленной машины.

  • dnsQueryType

    DnsQueryType необязательно

    Хром 103+

    Предпочтение разрешения адреса.

  • перезвонить

    функция

    Параметр callback выглядит так:

    (result: number)=>void

    • результат

      число

      Код результата, возвращенный базовым сетевым вызовом. Отрицательное значение указывает на ошибку.

create()

Обещать
chrome.sockets.tcp.create(
  properties?: SocketProperties,
  callback?: function,
)

Создает TCP-сокет.

Параметры

  • характеристики

    Свойства сокета необязательно.

    Свойства сокета (необязательно).

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (createInfo: CreateInfo)=>void

Возврат

  • Обещание <CreateInfo>

    Хром 121+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

disconnect()

Обещать
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)

Отключает розетку.

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 121+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

getInfo()

Обещать
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)

Получает состояние данного сокета.

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (socketInfo: SocketInfo)=>void

Возврат

  • Обещание <SocketInfo>

    Хром 121+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

getSockets()

Обещать
chrome.sockets.tcp.getSockets(
  callback?: function,
)

Получает список открытых в данный момент сокетов, принадлежащих приложению.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (socketInfos: SocketInfo[])=>void

Возврат

  • Обещание< SocketInfo []>

    Хром 121+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

secure()

chrome.sockets.tcp.secure(
  socketId: number,
  options?: SecureOptions,
  callback: function,
)

Запустите клиентское соединение TLS через подключенный клиентский сокет TCP.

Параметры

  • идентификатор сокета

    число

    Существующий подключенный сокет, который нужно использовать.

  • параметры

    SecureOptions необязательно

    Ограничения и параметры для TLS-соединения.

  • перезвонить

    функция

    Параметр callback выглядит так:

    (result: number)=>void

    • результат

      число

send()

chrome.sockets.tcp.send(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)

Отправляет данные по данному TCP-сокету.

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • данные

    МассивБуфер

    Данные для отправки.

  • перезвонить

    функция

    Параметр callback выглядит так:

    (sendInfo: SendInfo)=>void

setKeepAlive()

chrome.sockets.tcp.setKeepAlive(
  socketId: number,
  enable: boolean,
  delay?: number,
  callback: function,
)

Включает или отключает функцию поддержания активности для TCP-соединения.

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • давать возможность

    логическое значение

    Если это правда, включите функцию поддержания активности.

  • задерживать

    номер необязательно

    Установите задержку в секундах между последним полученным пакетом данных и первым подтверждением активности. По умолчанию — 0.

  • перезвонить

    функция

    Параметр callback выглядит так:

    (result: number)=>void

    • результат

      число

      Код результата, возвращенный базовым сетевым вызовом. Отрицательное значение указывает на ошибку.

setNoDelay()

chrome.sockets.tcp.setNoDelay(
  socketId: number,
  noDelay: boolean,
  callback: function,
)

Устанавливает или очищает TCP_NODELAY для TCP-соединения. Алгоритм Нэгла будет отключен, если установлен TCP_NODELAY .

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • без задержки

    логическое значение

    Если это правда, отключает алгоритм Нэгла.

  • перезвонить

    функция

    Параметр callback выглядит так:

    (result: number)=>void

    • результат

      число

      Код результата, возвращенный базовым сетевым вызовом. Отрицательное значение указывает на ошибку.

setPaused()

Обещать
chrome.sockets.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

Включает или отключает приложение от получения сообщений от своего узла. Значение по умолчанию неверно". Приостановка сокета обычно используется приложением для регулирования данных, отправляемых его узлом. Когда сокет приостановлен, событие onReceive не возникает. Когда сокет подключен и не находится на паузе, события onReceive вызываются снова при получении сообщений.

Параметры

  • идентификатор сокета

    число

  • остановился

    логическое значение

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 121+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

update()

Обещать
chrome.sockets.tcp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

Обновляет свойства сокета.

Параметры

  • идентификатор сокета

    число

    Идентификатор сокета.

  • характеристики

    Свойства для обновления.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 121+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

События

onReceive

chrome.sockets.tcp.onReceive.addListener(
  callback: function,
)

Событие возникает, когда данные получены для данного сокета.

Параметры

onReceiveError

chrome.sockets.tcp.onReceiveError.addListener(
  callback: function,
)

Событие возникает, когда возникает сетевая ошибка, пока среда выполнения ожидает данных об адресе сокета и порте. Как только это событие возникает, сокет устанавливается на paused , и для этого сокета больше не создаются события onReceive .

Параметры