我在我的Electron项目上以及当我尝试关闭该服务时正在使用Express模块
expreso.get('/test', function(req, res, next){
res.json({"key": "value"});
newWin.reload();
})
仍在同一端口上工作...
express.close()
不起作用,模块https://github.com/moebius-mlm/http-graceful-shutdown和https://www.npmjs.com/package/kill-port
service = new BrowserWindow({
webPreferences: {
nodeIntegration: true,
alwaysOnTop: false,
},
show: false,
frame: false,
skipTaskbar: true,
})
service.once('ready-to-show', () => {
service.show()
})
service.setMenu(null)
service.setSize(600, 400)
service.setPosition(0, 0)
service.loadURL("http://192.168.6.58:9001/genius/logout")
service.close()
newWin.close()
newWin = new BrowserWindow({
webPreferences: {
nodeIntegration: true,
alwaysOnTop: true,
skipTaskbar: true,
},
show: false,
frame: false,
})
newWin.show()
newWin.setMenu(null)
newWin.setSize(600, 400)
newWin.setPosition(0, 0)
newWin.loadURL("http://192.168.6.58:5000/logout/192.168.4.216")
setTimeout(function(){ newWin.close(); }, 5000)
server.close();
最后的server.close()
不能正常工作。
答案 0 :(得分:-1)
您是Windows用户。输入命令以查找正在运行的进程,如下所示:
ps
然后您将看到类似这样的内容:
PID PPID PGID WINPID TTY UID STIME COMMAND
8468 29784 8468 29576 cons1 197609 21:43:58 /usr/bin/ps
29784 1 29784 29784 cons1 197609 16:12:58 /usr/bin/bash
11220 26724 26724 35960 cons0 197609 16:13:41 /c/Program Files/nodejs/node
26724 9976 26724 31940 cons0 197609 16:13:41 /usr/bin/sh
9976 1 9976 9976 cons0 197609 09:14:22 /usr/bin/bash
您看到节点的“ PID”是11220吗?再次在外壳中输入命令:
kill -9 11220
然后键入命令ps
,它看起来像这样:
PID PPID PGID WINPID TTY UID STIME COMMAND
8468 29784 8468 29576 cons1 197609 21:43:58 /usr/bin/ps
29784 1 29784 29784 cons1 197609 16:12:58 /usr/bin/bash
26724 9976 26724 31940 cons0 197609 16:13:41 /usr/bin/sh
9976 1 9976 9976 cons0 197609 09:14:22 /usr/bin/bash
如果遵循上述命令,现在应该可以在端口3000上再次运行服务器。