Объект встроенный объект

Гнездо объекта

Сетевой объект сокета

Сокет принадлежит net модулю, как создать

1
var s = new net.Socket();

наследование

Конструктор

Socket

Конструктор Socket, создайте новый объект Socket

1 2
new Socket(Integer family = net.AF_INET, Integer type = net.SOCK_STREAM);

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

  • family : целое число, указанный набор адресов, по умолчанию AF_INET, ipv4
  • type : Integer, указывает семейство протоколов, по умолчанию SOCK_STREAM, tcp

Атрибут члена

family

Integer, запросить набор адресов текущего объекта Socket

1
readonly Integer Socket.family;

type

Integer, запрос текущего семейства протоколов объектов Socket

1
readonly Integer Socket.type;

remoteAddress

Строка, запросить адрес текущего подключенного партнера

1
readonly String Socket.remoteAddress;

remotePort

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

1
readonly Integer Socket.remotePort;

localAddress

Строка, запрос локального адреса текущего соединения

1
readonly String Socket.localAddress;

localPort

Integer, запрос текущего подключенного локального порта

1
readonly Integer Socket.localPort;

timeout

Целое число, запрос и установка единицы времени ожидания в миллисекундах

1
Integer Socket.timeout;

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

connect

Установите соединение TCP

1 2
Socket.connect(String host, Integer port) async;

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

  • host : String, укажите адрес другой стороны или имя хоста
  • port : Integer, укажите порт другой стороны

bind

Привязать текущий сокет к назначенному порту всех локальных адресов

1 2
Socket.bind(Integer port, Boolean allowIPv4 = true);

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

  • port : целое число, укажите связанный порт
  • allowIPv4 : Boolean, указывает, принимать ли соединение ipv4, по умолчанию установлено значение true. Этот параметр действителен в ipv6 и зависит от операционной системы

Привязать текущий сокет к указанному порту по указанному адресу

1 2 3
Socket.bind(String addr, Integer port, Boolean allowIPv4 = true);

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

  • addr : String, укажите связанный адрес
  • port : целое число, укажите связанный порт
  • allowIPv4 : Boolean, указывает, принимать ли соединение ipv4, по умолчанию установлено значение true. Этот параметр действителен в ipv6 и зависит от операционной системы

listen

Начните слушать запросы на соединение

1
Socket.listen(Integer backlog = 120);

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

  • backlog : Integer, укажите длину очереди запросов, лишний запрос будет отклонен, по умолчанию 120

accept

Подождите и примите соединение

1
Socket Socket.accept() async;

Вернуть результат:

  • Socket , вернуть полученный объект подключения

recv

Считайте данные указанного размера из соединения. В отличие от метода чтения, recv не гарантирует чтение требуемых данных, но возвращает сразу после чтения данных

1
Buffer Socket.recv(Integer bytes = -1) async;

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

  • bytes : Integer, укажите количество данных для чтения, по умолчанию это данные любого размера.

Вернуть результат:

  • Buffer , возвращает данные, прочитанные из соединения

recvfrom

Читать UDP-пакет

1
NObject Socket.recvfrom(Integer bytes = -1) async;

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

  • bytes : Integer, укажите количество данных для чтения, по умолчанию это данные любого размера.

Вернуть результат:

  • NObject , вернуть пакет, прочитанный из соединения

Результат, возвращаемый recvfrom, содержит следующее:

  • data : полученный двоичный блок данных
  • address : address отправителя
  • port : port отправителя

send

Записать данные данные в соединение, этот метод эквивалентен методу записи

1
Socket.send(Buffer data) async;

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

  • data : Buffer , учитывая данные для записи

sendto

Отправить пакет UDP на указанный порт ip:

1 2 3
Socket.sendto(Buffer data, String host, Integer port) async;

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

  • data : Buffer , учитывая данные для записи
  • host : String, укажите целевой ip или имя хоста
  • port : целое число, укажите целевой порт

read

Чтение данных указанного размера из потока

1
Buffer Socket.read(Integer bytes = -1) async;

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

  • bytes : Integer, задает объем данных, которые нужно прочитать, по умолчанию - чтение блоков данных произвольного размера, размер прочитанных данных зависит от устройства.

Вернуть результат:

  • Buffer , возвращает данные, прочитанные из потока, или ноль, если данные не читаются или соединение прервано

write

Записать данные в поток

1
Socket.write(Buffer data) async;

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

  • data : Buffer , учитывая данные для записи

flush

Запишите содержимое буфера файлов на физическое устройство

1
Socket.flush() async;

close

Закрыть текущий объект потока

1
Socket.close() async;

copyTo

Копировать данные потока в целевой поток

1 2
Long Socket.copyTo(Stream stm, Long bytes = -1) async;

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

  • stm : Stream , целевой объект stream
  • bytes : Long, количество скопированных байтов

Вернуть результат:

  • Long , возвращает количество скопированных байтов

toString

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

1
String Socket.toString();

Вернуть результат:

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

toJSON

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

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

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

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

Вернуть результат:

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