get-port-please
获取一个可用的开放端口
获取一个可用的 TCP 端口用于监听
用法
安装包
npm i get-port-please
// ESM
import {
getPort,
checkPort,
getRandomPort,
waitForPort,
} from "get-port-please";
// CommonJS
const {
getPort,
checkPort,
getRandomPort,
waitForPort,
} = require("get-port-please");
getPort(options?: GetPortOptions): Promise<number>
checkPort(port: number, host?: string): Promise<number | false>
waitForPort(port: number, options): Promise<number | false>
尝试顺序为:port > ports > random
选项
interface GetPortOptions {
name?: string;
random?: boolean;
port?: number;
portRange?: [fromInclusive: number, toInclusive: number];
ports?: number[];
host?: string;
memoDir?: string;
memoName?: string;
}
name
用于记住端口的唯一名称。默认为 default
。
random
如果启用,port
和 ports
将被忽略。默认为 false
。
port
要检查的第一个端口。默认为 process.env.PORT || 3000
ports
要检查的扩展端口。
portRange
要检查的扩展端口范围。
范围的开始和结束都是包含的,即在数学表示中为 [start, end]
。不支持反向端口范围。如果 start > end
,则将返回一个空范围。
alternativePortRange
作为备用的替代端口范围以供检查,当没有可用端口时。
范围的开始和结束都是包含的,即在数学表示中为 [start, end]
。不支持反向端口范围。如果 start > end
,则将返回一个空范围。
默认范围为 [3000, 3100]
(仅当未指定 port
时)。
host
要检查的主机。默认为 process.env.HOST
,否则将检查所有可用的主机。
许可
MIT