Son CV dans un terminal web en Javascript! https://terminal-cv.gregandev.fr
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
1.4 KiB

# get-port [![Build Status](https://travis-ci.org/sindresorhus/get-port.svg?branch=master)](https://travis-ci.org/sindresorhus/get-port)
> Get an available [TCP port](https://en.wikipedia.org/wiki/Port_(computer_networking))
## Install
```
$ npm install get-port
```
## Usage
```js
const getPort = require('get-port');
(async () => {
console.log(await getPort());
//=> 51402
})();
```
Pass in a preferred port:
```js
(async () => {
console.log(await getPort({port: 3000}));
// Will use 3000 if available, otherwise fall back to a random port
})();
```
Pass in an array of preferred ports:
```js
(async () => {
console.log(await getPort({port: [3000, 3001, 3002]}));
// Will use any element in the preferred ports array if available, otherwise fall back to a random port
})();
```
## API
### getPort([options])
Returns a `Promise` for a port number.
#### options
Type: `Object`
##### port
Type: `number | number[]`
A preferred port or an array of preferred ports to use.
##### host
Type: `string`
The host on which port resolution should be performed. Can be either an IPv4 or IPv6 address.
## Beware
There is a very tiny chance of a race condition if another service starts using the same port number as you in between the time you get the port number and you actually start using it.
## Related
- [get-port-cli](https://github.com/sindresorhus/get-port-cli) - CLI for this module
## License
MIT © [Sindre Sorhus](https://sindresorhus.com)