chrome.sockets.tcpServer

Описание

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

Манифест

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

"sockets"

Типы

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

    • socketInfos

      Массив объектов, содержащий информацию о сокетах.

Возврат

  • Обещание< 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