Перейти к содержимому

Справочник API node:net

Серверы и клиенты TCP, сокеты домена Unix и вспомогательные функции для адресов

На этой странице
Open in ChatGPTOpen in Claude

Серверы и клиенты TCP и домена Unix работают в цикле событий Elide, поэтому скрипт продолжает работу, пока сервер слушает или открыт сокет:

import net from "node:net";

const server = net.createServer((socket) => {
  socket.end("hello");
  server.close();
});

server.listen(0, "127.0.0.1", () => {
  const { port } = server.address();
  net.connect(port, "127.0.0.1").on("data", (data) => console.log(String(data)));
});

Также доступны вспомогательные функции для адресов и классы значений:

import net from "node:net";

console.log(net.isIP("127.0.0.1")); // 4
console.log(net.isIP("::1")); // 6
console.log(net.isIP("not-an-ip")); // 0

const blocked = new net.BlockList();
blocked.addAddress("127.0.0.1");
console.log(blocked.check("127.0.0.1")); // true

Модуль экспортирует Socket, Stream, Server, BlockList, SocketAddress, connect, createConnection, createServer, вспомогательные функции для IP и настройки автовыбора семейства адресов по умолчанию. listen() и connect() принимают путь в файловой системе для сокетов домена Unix.

Когда активны флаги песочницы, доступ к сети управляется --allow-net[=HOSTS] и --deny-net <HOSTS>.

Reference

Status: Partial · Not measured

net exports

BlockList, Server, Socket, SocketAddress, Stream, connect, createConnection, createServer, getDefaultAutoSelectFamily, getDefaultAutoSelectFamilyAttemptTimeout, isIP, isIPv4, isIPv6, setDefaultAutoSelectFamily, setDefaultAutoSelectFamilyAttemptTimeout

Not implemented

BoundSocket.

Была ли эта страница полезной?