server.listen(options[, callback])
历史
版本 | 变化 |
---|---|
v15.6.0 | 添加了AbortSignal 支持。 |
v11.4.0 | 支持 |
v0.11.14 | 添加于:v0.11.14 |
参数
options
<Object>必需的。支持以下属性:port
<number>host
<string>path
<string> 如果指定了port
,将被忽略。请参阅Identifying paths for IPC connections。backlog
<number>server.listen()
exclusive
<boolean> 默认:false
readableAll
<boolean> IPC 服务器使管道对所有用户都可读。 默认:false
。writableAll
<boolean> 对于 IPC 服务器,使管道对所有用户都是可写的。 默认:false
。ipv6Only
<boolean> 对于 TCP 服务器,将ipv6Only
设置为true
将禁用 dual-stack 支持,即绑定到主机::
不会绑定0.0.0.0
。 默认:false
。signal
<AbortSignal> AbortSignal,可用于关闭侦听服务器。
callback
<Function> 函数。- 返回: <net.Server>
如果指定了 port
,它的行为与
相同。否则,如果指定了 server.listen([port[, host[, backlog]]][, callback])
path
,它的行为与
相同。如果没有指定它们,则会抛出错误。server.listen(path[, backlog][, callback])
如果 exclusive
是 false
(默认),那么集群工作人员将使用相同的底层句柄,从而允许共享连接处理职责。当 exclusive
为 true
时,句柄不共享,尝试共享端口会导致错误。下面显示了一个在独占端口上侦听的示例。
server.listen({
host: 'localhost',
port: 80,
exclusive: true
});
当 exclusive
是 true
并且底层句柄是共享的时,可能有多个工作人员查询具有不同积压的句柄。在这种情况下,将使用第一个传递给主进程的backlog
。
以 root 身份启动 IPC 服务器可能会导致非特权用户无法访问服务器路径。使用readableAll
和writableAll
将使所有用户都可以访问服务器。
如果启用了signal
选项,则在相应的AbortController
上调用.abort()
类似于在服务器上调用.close()
:
const controller = new AbortController();
server.listen({
host: 'localhost',
port: 80,
signal: controller.signal
});
// Later, when you want to close the server.
controller.abort();
相关用法
- Node.js server.listen()用法及代码示例
- Node.js server.addContext()用法及代码示例
- Node.js server.close()用法及代码示例
- Node.js server.setSecureContext()用法及代码示例
- Node.js server.setTicketKeys()用法及代码示例
- Node.js server.address()用法及代码示例
- Node.js server.getTicketKeys()用法及代码示例
- Node.js serverhttp2session.origin()用法及代码示例
- Node.js serverhttp2session.altsvc()用法及代码示例
- Node.js socket.bind()用法及代码示例
- Node.js stream.Writable.uncork()用法及代码示例
- Node.js split()用法及代码示例
- Node.js stream.Readable.take(limit[, options])用法及代码示例
- Node.js stream.Readable.pipe(destination[, options])用法及代码示例
- Node.js socket.setRecvBufferSize()用法及代码示例
- Node.js socket.getSendBufferSize()用法及代码示例
- Node.js stats.ctimeMs属性用法及代码示例
- Node.js stream.Readable.setEncoding(encoding)用法及代码示例
- Node.js stats.isSymbolicLink()用法及代码示例
- Node.js stats.atimeMs属性用法及代码示例
- Node.js sort()用法及代码示例
- Node.js stream.Readable.some(fn[, options])用法及代码示例
- Node.js stream.Readable.map(fn[, options])用法及代码示例
- Node.js socket.setBroadcast()用法及代码示例
- Node.js socket.ref()用法及代码示例
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 server.listen(options[, callback])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。