Описание
Используйте API chrome.socket
для отправки и получения данных по сети с использованием соединений TCP и UDP. Примечание. Начиная с Chrome 33, этот API устарел в пользу API- sockets.udp
, sockets.tcp
и sockets.tcpServer
.
Разрешения
socket
Типы
AcceptInfo
Характеристики
- код результата
число
- идентификатор сокета
номер необязательно
Идентификатор принятого сокета.
CreateInfo
Характеристики
- идентификатор сокета
число
Идентификатор вновь созданного сокета.
CreateOptions
NetworkInterface
Характеристики
- адрес
нить
Доступный адрес IPv4/6.
- имя
нить
Базовое имя адаптера. В *nix это обычно «eth0», «lo» и т. д.
- префиксдлина
число
Длина префикса
ReadInfo
Характеристики
- данные
МассивБуфер
- код результата
число
resultCode возвращается из базового вызова read().
RecvFromInfo
Характеристики
- адрес
нить
Адрес удаленной машины.
- данные
МассивБуфер
- порт
число
- код результата
число
resultCode возвращается из базового вызова Recvfrom().
SecureOptions
Характеристики
- тлсверсион
TLSVersionConstraints необязательно.
SocketInfo
Характеристики
- подключен
логическое значение
Подключен ли базовый сокет.
Для
tcp
сокетов это останется верным, даже если удаленный узел отключился. Чтение или запись в сокет может привести к ошибке, намекающей на то, что этот сокет следует отключить с помощью методаdisconnect()
.Для сокетов
udp
это просто показывает, указан ли удаленный адрес по умолчанию для чтения и записи пакетов. - локальныйадрес
строка необязательна
Если базовый сокет привязан или подключен, он содержит локальный адрес IPv4/6.
- локальный порт
номер необязательно
Если базовый сокет привязан или подключен, он содержит его локальный порт.
- адрес сверстника
строка необязательна
Если базовый сокет подключен, он содержит адрес IPv4/6 узла.
- одноранговый порт
номер необязательно
Если базовый сокет подключен, содержит порт подключенного узла.
- тип сокета
Тип передаваемого сокета. Это будет
tcp
илиudp
.
SocketType
Перечисление
"TCP" "удап"
TLSVersionConstraints
Характеристики
- Макс
строка необязательна
- мин
строка необязательна
Минимальная и максимально допустимая версии TLS. Поддерживаемые значения:
tls1.2
илиtls1.3
.Значения
tls1
иtls1.1
больше не поддерживаются. Еслиmin
установлено одно из этих значений, оно будет автоматически ограничено значениемtls1.2
. Если дляmax
установлено одно из этих значений или любое другое неизвестное значение, оно будет игнорироваться.
WriteInfo
Характеристики
- байтыНаписано
число
Количество отправленных байтов или отрицательный код ошибки.
Методы
accept()
chrome.socket.accept(
socketId: number,
callback: function,
)
Этот метод применим только к сокетам TCP. Регистрирует функцию обратного вызова, которая будет вызываться при принятии соединения на этом сокете прослушивающего сервера. Слушайте, надо позвонить первым. Если уже существует активный обратный вызов принятия, этот обратный вызов будет вызван немедленно с ошибкой в качестве resultCode.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- перезвонить
функция
Параметр
callback
выглядит так:(acceptInfo: AcceptInfo) => void
- принять информацию
bind()
chrome.socket.bind(
socketId: number,
address: string,
port: number,
callback: function,
)
Связывает локальный адрес сокета. В настоящее время он не поддерживает TCP-сокеты.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- адрес
нить
Адрес локальной машины.
- порт
число
Порт локальной машины.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
connect()
chrome.socket.connect(
socketId: number,
hostname: string,
port: number,
callback: function,
)
Подключает сокет к удаленному компьютеру (для tcp
сокета). Для сокета udp
это устанавливает адрес по умолчанию, на который пакеты отправляются и считываются для вызовов read()
и write()
.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- имя хоста
нить
Имя хоста или IP-адрес удаленного компьютера.
- порт
число
Порт удаленной машины.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
create()
chrome.socket.create(
type: SocketType,
options?: CreateOptions,
callback?: function,
)
Создает сокет указанного типа, который будет подключаться к указанному удаленному компьютеру.
Параметры
- тип
Тип создаваемого сокета. Должно быть
tcp
илиudp
. - параметры
CreateOptions необязательно
Варианты сокетов.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(createInfo: CreateInfo) => void
- создатьинформацию
Возврат
Обещание <CreateInfo>
Хром 121+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
destroy()
chrome.socket.destroy(
socketId: number,
)
Уничтожает сокет. Каждый созданный сокет должен быть уничтожен после использования.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
disconnect()
chrome.socket.disconnect(
socketId: number,
)
Отключает розетку. Для сокетов UDP disconnect
не является операцией, но его можно безопасно вызывать.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
getInfo()
chrome.socket.getInfo(
socketId: number,
callback?: function,
)
Получает состояние данного сокета.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: SocketInfo) => void
- результат
Возврат
Обещание <SocketInfo>
Хром 121+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getJoinedGroups()
chrome.socket.getJoinedGroups(
socketId: number,
callback: function,
)
Получите адреса группы многоадресной рассылки, к которой в данный момент присоединен сокет.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- перезвонить
функция
Параметр
callback
выглядит так:(groups: string[]) => void
- группы
нить[]
getNetworkList()
chrome.socket.getNetworkList(
callback?: function,
)
Получает информацию о локальных адаптерах в этой системе.
Параметры
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: NetworkInterface[]) => void
- результат
Возврат
Обещание< NetworkInterface []>
Хром 121+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
joinGroup()
chrome.socket.joinGroup(
socketId: number,
address: string,
callback: function,
)
Присоединитесь к группе многоадресной рассылки и начните получать пакеты из этой группы. Сокет должен иметь тип UDP и должен быть привязан к локальному порту перед вызовом этого метода.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- адрес
нить
Адрес группы для присоединения. Доменные имена не поддерживаются.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
leaveGroup()
chrome.socket.leaveGroup(
socketId: number,
address: string,
callback: function,
)
Покиньте группу многоадресной рассылки, к которой ранее присоединились с помощью joinGroup
. Нет необходимости покидать группу многоадресной рассылки перед уничтожением сокета или выходом из нее. Это автоматически вызывается ОС.
Выход из группы не позволит маршрутизатору отправлять многоадресные дейтаграммы на локальный хост, при условии, что ни один другой процесс на хосте все еще не присоединен к группе.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- адрес
нить
Адрес группы, по которой нужно выйти. Доменные имена не поддерживаются.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
listen()
chrome.socket.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
)
Этот метод применим только к сокетам TCP. Прослушивает соединения по указанному порту и адресу. Это фактически делает этот сокет серверным, и функции клиентского сокета (подключение, чтение, запись) больше не могут использоваться в этом сокете.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- адрес
нить
Адрес локальной машины.
- порт
число
Порт локальной машины.
- отставание
номер необязательно
Длина очереди прослушивания сокета.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
read()
chrome.socket.read(
socketId: number,
bufferSize?: number,
callback: function,
)
Считывает данные из данного подключенного сокета.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- размер буфера
номер необязательно
Размер буфера чтения.
- перезвонить
функция
Параметр
callback
выглядит так:(readInfo: ReadInfo) => void
- readInfo
recvFrom()
chrome.socket.recvFrom(
socketId: number,
bufferSize?: number,
callback: function,
)
Получает данные из указанного сокета UDP.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- размер буфера
номер необязательно
Размер приемного буфера.
- перезвонить
функция
Параметр
callback
выглядит так:(recvFromInfo: RecvFromInfo) => void
- RecvFromInfo
secure()
chrome.socket.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
Запустите клиентское соединение TLS через подключенный клиентский сокет TCP.
Параметры
- идентификатор сокета
число
Используемый подключенный сокет.
- параметры
SecureOptions необязательно
Ограничения и параметры для TLS-соединения.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
sendTo()
chrome.socket.sendTo(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
callback: function,
)
Отправляет данные по данному сокету UDP на указанный адрес и порт.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- данные
МассивБуфер
Данные для записи.
- адрес
нить
Адрес удаленной машины.
- порт
число
Порт удаленной машины.
- перезвонить
функция
Параметр
callback
выглядит так:(writeInfo: WriteInfo) => void
- записьИнформация
setKeepAlive()
chrome.socket.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
Включает или отключает функцию поддержания активности для TCP-соединения.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- давать возможность
логическое значение
Если это правда, включите функцию поддержания активности.
- задерживать
номер необязательно
Установите задержку в секундах между последним полученным пакетом данных и первым подтверждением активности. По умолчанию — 0.
- перезвонить
функция
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
setMulticastLoopbackMode()
chrome.socket.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
)
Установите, будут ли многоадресные пакеты, отправленные с хоста в группу многоадресной рассылки, возвращаться обратно на хост.
Примечание: поведение setMulticastLoopbackMode
немного отличается в Windows и Unix-подобных системах. Несогласованность возникает только тогда, когда на одном хосте имеется более одного приложения, присоединенного к одной и той же группе многоадресной рассылки, но с разными настройками режима многоадресной обратной связи. В Windows приложения с отключенной шлейфом не будут ПОЛУЧАТЬ пакеты шлейфа; в то время как в Unix-подобных системах приложения с отключенной шлейфом не будут ОТПРАВЛЯТЬ пакеты шлейфа другим приложениям на том же хосте. См. MSDN: http://goo.gl/6vqbj.
Для вызова этого метода не требуются разрешения на многоадресную рассылку.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- включено
логическое значение
Укажите, следует ли включать режим обратной связи.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
setMulticastTimeToLive()
chrome.socket.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
)
Установите время жизни многоадресных пакетов, отправляемых в группу многоадресной рассылки.
Для вызова этого метода не требуются разрешения на многоадресную рассылку.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- ТТЛ
число
Значение времени жизни.
- перезвонить
функция
Параметр
callback
выглядит так:(result: number) => void
- результат
число
setNoDelay()
chrome.socket.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
Устанавливает или очищает TCP_NODELAY
для TCP-соединения. Алгоритм Нэгла будет отключен, если установлен TCP_NODELAY
.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- без задержки
логическое значение
Если это правда, отключает алгоритм Нэгла.
- перезвонить
функция
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
write()
chrome.socket.write(
socketId: number,
data: ArrayBuffer,
callback: function,
)
Записывает данные в данный подключенный сокет.