gpt4 book ai didi

node.js - 如何在不终止进程的情况下停止 node.js 服务器?

转载 作者:IT老高 更新时间:2023-10-28 22:01:21 24 4
gpt4 key购买 nike

假设一个服务器是这样创建的:

var net = require('net');

var server = net.createServer();
server.listen(32323, '127.0.0.1');

server.close(); // gives a "not running" error if there is IP in the listen statement

有没有办法从 node.js 中阻止它,例如没有结束/杀死整个过程?

另外,这里有一个更复杂的例子,无论服务器绑定(bind)到什么 IP,它都不会停止:

var net = require('net');

var server = net.createServer(function(socket) {
socket.on('data', console.log);
server.close();
});

server.listen(32323);

var socket = net.createConnection(32323);
socket.write('hi');

最佳答案

server.close

"listening" 事件触发之前不要调用 close。

要么添加回调到listen,要么手动添加事件

server.listen(port, host, function () { server.close(); });
// OR
server.on("listening", function () { server.close(); });
server.listen(port, host);

var net = require('net');

var server = net.createServer(function(socket) {
socket.on('data', console.log);
server.close();
});

server.listen(32323);

var socket = net.createConnection(32323);
// call end to make sure the socket closes
socket.end('hi');

关于node.js - 如何在不终止进程的情况下停止 node.js 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8943136/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com