Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

net 网络服务器对象

基础

源代码:lib/net.js

作用:

创建基于流的 TCP或IPC

  • 服务器:net.createServer()

  • 客户端:net.createConnection()

在 Windows 上使用命名管道支持 IPC,在其他操作系统上则使用 Unix 域套接字

用法

  • 引入

    • v16
      import net from 'net';
      
    • v15之前
      const net = require('net')
      

BlockList类

新增于: v15.0.0

const blockList = new net.BlockList();

作用:禁用对特定 IP 地址、范围或子网的出入站访问规则

  • 设置接口

    • blockList.addAddress
    • blockList.addRange
    • blockList.addSubnet
  • 检查接口

    • blockList.check

SocketAddress类

新增于: v15.14.0

Server类

const server = new net.createServer()

作用:创建 TCP 或 IPC 服务器

  • 监听

    • server.listen

Socket类

const client = net.createConnection({ port: 8124 }, () => {
  // 'connect' 监听器。
  console.log('connected to server!');
  client.write('world!\r\n');
});
client.on('data', (data) => {
  console.log(data.toString());
  client.end();
});
client.on('end', () => {
  console.log('disconnected from server');
});
const server = net.createServer((c) => {
  // 'connection' 监听器。
  console.log('client connected');
  c.on('end', () => {
    console.log('client disconnected');
  });
  c.write('hello\r\n');
  c.pipe(c);
});
server.on('error', (err) => {
  throw err;
});
server.listen(8124, () => {
  console.log('server bound');
});