Встроенный объект объекта

ОбъектDgramSocket

dgram.SocketОбъект представляет собой функцию пакета, которая инкапсулирует функциюEventEmitter.

Экземпляры DgramSocket предоставляютсяdgram.createSocket() созданный. создаватьdgram.SocketЭкземплярам не обязательно использовать новое ключевое слово.

Метод создания:

1 2
var dgram = require('dgram'); var sock = dgram.createSocket('udp4');

событие

DgramSocket наследует отEventEmitter, изменение состояния объекта и прием данных реализованы в форме событий.

закрыть событие

closeСобытие будет запущено после close()закрытия с помощью socket. После запуска этого события на этой странице не будет запускаться socketникаких новых событий.message

событие ошибки

При возникновении любой ошибки errorсобытие будет инициировано.

событие прослушивания

Когда кто-то socketначинает прослушивать информацию о пакете, listeningсобытие будет вызвано. Это событие запускается сразу после создания сокета UDP.

событие сообщения

Событие срабатывает socketпри получении нового пакета . и будут переданы в качестве параметров функции обработчика событий.messagemsgrinfo

  • msg:Buffer,информация
  • rinfo: Объект, информация об удаленном адресе.
    • address: строка, адрес отправителя
    • family: строка, тип адреса («IPv4» или «IPv6»)
    • port: номер, порт отправителя
    • size: номер, размер сообщения

отношения наследства

статические свойства

defaultMaxListeners

Целое число, глобальное максимальное количество слушателей по умолчанию.

1
static Integer DgramSocket.defaultMaxListeners;

функция-член

bind

Этот метод сделаетdgram.SocketПрослушивать информацию о пакете на указанных portи . addrСобытие запускается, когда привязка завершена listening.

1 2
DgramSocket.bind(Integer port = 0, String addr = "") async;

Параметры звонка:

  • port: целое число, указывает порт привязки. Если он portне указан или равен 0, операционная система попытается привязать случайный порт.
  • addr: строка, указывает адрес привязки.Если адрес не указан, операционная система попытается прослушивать все адреса.

Этот метод сделаетdgram.SocketПрослушивать информацию о пакете на optsуказанных и port. addressСобытие запускается, когда привязка завершена listening.

1
DgramSocket.bind(Object opts) async;

Параметры звонка:

  • opts: Объект, укажите параметры привязки

send

Отправить пакет на сокет

1 2 3
Integer DgramSocket.send(Buffer msg, Integer port, String address = "") async;

Параметры звонка:

  • msg:Buffer, укажите данные для отправки
  • port: целое число, укажите порт назначения для отправки.
  • address: Строка, укажите адрес назначения для отправки.

Результаты возврата:

  • Integer, возврат размера отправки

Отправить пакет на сокет

1 2 3 4 5
Integer DgramSocket.send(Buffer msg, Integer offset, Integer length, Integer port, String address = "") async;

Параметры звонка:

  • msg:Buffer, укажите данные для отправки
  • offset: целое число, начать отправку с указанного смещения.
  • length: целое число, для отправки указанной длины
  • port: целое число, укажите порт назначения для отправки.
  • address: Строка, укажите адрес назначения для отправки.

Результаты возврата:

  • Integer, возврат размера отправки

address

Возвращает объект, содержащий информацию об адресе сокета. Для сокетов UDP объект будет содержать свойства адреса, семейства и порта.

1
NObject DgramSocket.address();

Результаты возврата:

  • NObject, возвращает адрес привязки объекта

close

Закрыть текущий сокет

1
DgramSocket.close();

Закрыть текущий сокет

1
DgramSocket.close(Function callback);

Параметры звонка:

  • callback: Функция, функция обратного вызова после завершения работы, что эквивалентно closeдобавлению прослушивателя события.

getRecvBufferSize

Запросить размер буфера приема сокета

1
Integer DgramSocket.getRecvBufferSize();

Результаты возврата:

  • Integer, вернуть результаты запроса

getSendBufferSize

Запросить размер буфера отправки сокета

1
Integer DgramSocket.getSendBufferSize();

Результаты возврата:

  • Integer, вернуть результаты запроса

addMembership

Присоединитесь к группе многоадресной рассылки по заданному multicastAddress и multicastInterface, используя опцию сокета IP_ADD_MEMBERSHIP. Если параметр multicastInterface не указан, операционная система выбирает интерфейс и добавляет к нему членство. Чтобы добавить членство в каждый доступный интерфейс, вызовите addMembership несколько раз, по одному для каждого интерфейса.

1 2
DgramSocket.addMembership(String multicastAddress, String multicastInterface = "");

Параметры звонка:

  • multicastAddress: строка, указывает адрес группы многоадресной рассылки, к которой нужно присоединиться.
  • multicastInterface: строка, указывает интерфейс группы многоадресной рассылки, к которой нужно присоединиться.

dropMembership

Используйте опцию сокета IP_DROP_MEMBERSHIP, чтобы оставить группу многоадресной рассылки по адресу multicastAddress. Ядро автоматически вызывает этот метод, когда сокет закрывается или процесс завершается, поэтому у большинства приложений никогда не будет причин вызывать этот метод.

1 2
DgramSocket.dropMembership(String multicastAddress, String multicastInterface = "");

Параметры звонка:

  • multicastAddress: строка, указывает адрес группы многоадресной рассылки, которую необходимо удалить.
  • multicastInterface: строка, указывает интерфейс группы многоадресной рассылки, который необходимо удалить.

setMulticastTTL

Установите параметр сокета IP_MULTICAST_TTL

1
DgramSocket.setMulticastTTL(Integer ttl);

Параметры звонка:

  • ttl: целое число, указывает настраиваемое время жизни. Параметр ttl может иметь значение от 0 до 255. Значение по умолчанию в большинстве систем — 1.

setRecvBufferSize

Установить размер буфера приема сокета

1
DgramSocket.setRecvBufferSize(Integer size);

Параметры звонка:

  • size: целое число, укажите размер, который будет установлен.

setSendBufferSize

Установить размер буфера отправки сокета

1
DgramSocket.setSendBufferSize(Integer size);

Параметры звонка:

  • size: целое число, укажите размер, который будет установлен.

setBroadcast

Установите или очистите параметр сокета SO_BROADCAST.

1
DgramSocket.setBroadcast(Boolean flag);

Параметры звонка:

  • flag: логическое значение, если установлено значение true, UDP-пакеты будут отправляться на широковещательный адрес локального интерфейса.

ref

Не допускайте выхода процесса fibjs и не допускайте выхода процесса fibjs во время привязки объекта.

1
DgramSocket DgramSocket.ref();

Результаты возврата:

  • DgramSocket, возвращает текущий объект

unref

Разрешить завершение процесса fibjs. Разрешить завершение процесса fibjs во время привязки объекта.

1
DgramSocket DgramSocket.unref();

Результаты возврата:

  • DgramSocket, возвращает текущий объект

on

Привяжите обработчик событий к объекту

1 2
Object DgramSocket.on(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите обработчик событий к объекту

1
Object DgramSocket.on(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

addListener

Привяжите обработчик событий к объекту

1 2
Object DgramSocket.addListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите обработчик событий к объекту

1
Object DgramSocket.addListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

prependListener

Привяжите обработчик событий к источнику объекта

1 2
Object DgramSocket.prependListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите обработчик событий к источнику объекта

1
Object DgramSocket.prependListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

once

Привяжите к объекту одноразовый обработчик событий. Одноразовый обработчик будет срабатывать только один раз.

1 2
Object DgramSocket.once(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите к объекту одноразовый обработчик событий. Одноразовый обработчик будет срабатывать только один раз.

1
Object DgramSocket.once(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

prependOnceListener

Привяжите обработчик событий к источнику объекта

1 2
Object DgramSocket.prependOnceListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите обработчик событий к источнику объекта

1
Object DgramSocket.prependOnceListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

off

Отменить назначение функции из очереди обработки объекта

1 2
Object DgramSocket.off(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить все функции в очереди обработки объекта

1
Object DgramSocket.off(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить назначение функции из очереди обработки объекта

1
Object DgramSocket.off(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта используется в качестве имени события, а значение атрибута используется в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

removeListener

Отменить назначение функции из очереди обработки объекта

1 2
Object DgramSocket.removeListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить все функции в очереди обработки объекта

1
Object DgramSocket.removeListener(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить назначение функции из очереди обработки объекта

1
Object DgramSocket.removeListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта используется в качестве имени события, а значение атрибута используется в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

removeAllListeners

Отменяет все прослушиватели всех событий из очереди обработки объекта. Если событие указано, удаляются все прослушиватели указанного события.

1
Object DgramSocket.removeAllListeners(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменяет все прослушиватели всех событий из очереди обработки объекта. Если событие указано, удаляются все прослушиватели указанного события.

1
Object DgramSocket.removeAllListeners(Array evs = []);

Параметры звонка:

  • evs: Массив, укажите название события

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

setMaxListeners

Ограничение количества прослушивателей по умолчанию, только для совместимости.

1
DgramSocket.setMaxListeners(Integer n);

Параметры звонка:

  • n: Целое число, укажите количество событий

getMaxListeners

Получает предельное количество прослушивателей по умолчанию, только для совместимости.

1
Integer DgramSocket.getMaxListeners();

Результаты возврата:

  • Integer, возвращает лимитируемое количество по умолчанию

listeners

Запросить массив прослушивателей для указанного события объекта

1
Array DgramSocket.listeners(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Array, возвращает массив прослушивателей для указанного события

listenerCount

Запрос количества прослушивателей для указанного события объекта

1
Integer DgramSocket.listenerCount(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Integer, возвращает количество прослушивателей указанного события

Запрос количества прослушивателей для указанного события объекта

1 2
Integer DgramSocket.listenerCount(Value o, String ev);

Параметры звонка:

  • o: Значение, указывает объект запроса.
  • ev: строка, указывает название события.

Результаты возврата:

  • Integer, возвращает количество прослушивателей указанного события

eventNames

Имя события прослушивателя запроса

1
Array DgramSocket.eventNames();

Результаты возврата:

  • Array, возвращает массив имен событий

emit

Активно запускать событие

1 2
Boolean DgramSocket.emit(String ev, ...args);

Параметры звонка:

  • ev: строка, имя события
  • args: ..., параметры события будут переданы в функцию обработки событий

Результаты возврата:

  • Boolean, возвращает статус триггера события, возвращает true, если есть ответное событие, в противном случае возвращает false

toString

Возвращает строковое представление объекта. Обычно возвращается «[Native Object]». Объект может быть повторно реализован в соответствии с его собственными характеристиками.

1
String DgramSocket.toString();

Результаты возврата:

  • String, возвращает строковое представление объекта

toJSON

Возвращает представление объекта в формате JSON, обычно возвращая коллекцию читаемых свойств, определенных объектом.

1
Value DgramSocket.toJSON(String key = "");

Параметры звонка:

  • key: Строка, не используется.

Результаты возврата:

  • Value, возвращает значение, содержащее сериализуемый JSON