当你需要获取一个服务端开放的端口号时,可以通过使用 port.min.js 这个 NPM 包来方便的获取该端口号。该包使用方便,可以让你快速的集成并使用该功能。
安装
npm install port.min.js --save
使用
在你的代码中引入 port.min.js:
const portScanner = require('port.min.js')
scan
scan(port, host, timeout)
该函数可以用于扫描指定的端口是否开放。其中,参数端口是必填项,host 和 timeout 是可选的。当 host 未指定时,默认扫描 localhost。
// 扫描本地 3000 端口是否开放 portScanner.scan(3000, (status) => { console.log(status) })
该函数的回调函数参数 status 可以为 'open' 或 'closed'。
findAPortInUse
findAPortInUse(startPort, endPort, host, timeout)
该函数会在指定的端口范围内寻找并返回一个开放的端口号。其中,参数 startPort 和 endPort 是端口范围;host 和 timeout 是可选的。
// 搜索本地 3000 到 4000 端口中第一个被使用的端口号 portScanner.findAPortInUse(3000, 4000, (error, port) => { if (error) { console.log(error) } else { console.log(port) } })
findAPortNotInUse
findAPortNotInUse(startPort, endPort, host, timeout)
该函数会在指定的端口范围内寻找并返回一个未被使用的端口号。其中,参数 startPort 和 endPort 是端口范围;host 和 timeout 是可选的。
// 搜索本地 3000 到 4000 端口中第一个未被使用的端口号 portScanner.findAPortNotInUse(3000, 4000, (error, port) => { if (error) { console.log(error) } else { console.log(port) } })
示例
-- -------------------- ---- ------- ----- ----------- - ---------------------- -- ---- ---- ------ ---------------------- -------- -- - ---------------- ------ -- ---- ---- -- - - ------- -- -- ---- ---- - ---- ------------- -------------------------------- ----- ------- ----- -- - -- ------- - --------------- ----- -- --- ----- --- -- ----- - ---- - ---------------- ----- ---- ---- ----- -- --- ----- -- --------- - -- -- ---- ---- - ---- -------------- ----------------------------------- ----- ------- ----- -- - -- ------- - --------------- ----- -- --- ----- --- --------- --- ----- - ---- - ---------------- ----- --------- ---- ----- -- --- ----- -- --------- - --
结论
使用 port.min.js 可以方便地获取指定端口的开放状态以及查找可用的端口,帮助你更快速的进行端口相关的开发工作。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066bce967216659e244a9a