new net.Socket([options])


  • options <Object> 可用选项有:
    • allowHalfOpen <boolean> 如果设置为 false,当可读端结束时,套接字将自动结束可写端。详情请参见 net.createServer()'end' 事件。默认值: false
    • fd <number> 如果指定,将使用给定的文件描述符封装现有套接字,否则将创建一个新的套接字。
    • onread <Object> 如果指定,传入的数据会存储在一个 buffer 中,并在数据到达套接字时传递给提供的 callback。这将导致流功能不再提供任何数据。套接字仍会像往常一样触发 'error''end''close' 等事件。像 pause()resume() 这样的方法也会按预期工作。
      • buffer <Buffer> | <Uint8Array> | <Function> 可以是用于存储传入数据的可重复使用的内存块,也可以是返回此类内存块的函数。
      • callback <Function> 此函数会在每个传入数据块到来时被调用。它会接收两个参数:写入到 buffer 的字节数以及对 buffer 的引用。从此函数返回 false 会隐式地 pause() 套接字。此函数将在全局上下文中执行。
    • readable <boolean> 当传入 fd 时允许对套接字进行读取,否则将被忽略。默认值: false
    • signal <AbortSignal> 一个可以用于销毁套接字的中止信号。
    • writable <boolean> 当传入 fd 时允许对套接字进行写操作,否则忽略。默认值: false
  • 返回值: <net.Socket>

创建一个新的套接字对象。

【Creates a new socket object.】

新创建的套接字可以是 TCP 套接字,也可以是流式 IPC 端点,这取决于它 connect() 到什么。

【The newly created socket can be either a TCP socket or a streaming IPC endpoint, depending on what it connect() to.】