最近在研究一个企业级的WEB服务器,在启动应用是需要查看端口是否被程序占用,所有想通过程序来监听端口占用情况,决定是否启动应用。
使用方式:
1.引入net模块
var net = require('net')
2.定义函数
function postOccupied(port, callback){ var server = net.createServer().listen(port) server.on('listening', function () { server.close() // 关闭服务 console.log(port, '端口可以使用'); callback(true); }); server.on('error', function (err) { if (err.code === 'EADDRINUSE') { console.log(port, '端口已被占用') callback(false); } }); }
3.使用方式
this.postOccupied(port,function(success){ if(!success){ //提示信息 that.notify('端口已被占用','','error') return ; } //启动程序 that.runJar(); });