Les serveurs et clients TCP et de domaine Unix s’exécutent sur la boucle d’événements d’Elide : un script reste donc en vie tant qu’un serveur écoute ou qu’un socket est ouvert :
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)));
});Des utilitaires d’adresses et des classes de valeurs sont également disponibles :
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")); // trueLe module exporte Socket, Stream, Server, BlockList, SocketAddress,
connect, createConnection, createServer, les utilitaires IP et les
réglages par défaut de sélection automatique de la famille d’adresses.
listen() et connect() acceptent un chemin du système de fichiers pour les
sockets de domaine Unix.
Lorsque des options de bac à sable sont actives, l’accès réseau est contrôlé par
--allow-net[=HOSTS] et --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.