https://github.com/joeferner/node-openport
Looks for an open port to start a server on
https://github.com/joeferner/node-openport
Last synced: over 1 year ago
JSON representation
Looks for an open port to start a server on
- Host: GitHub
- URL: https://github.com/joeferner/node-openport
- Owner: joeferner
- Created: 2012-02-22T22:38:21.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2018-12-08T17:00:51.000Z (over 7 years ago)
- Last Synced: 2025-02-28T13:23:12.609Z (over 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 39.1 KB
- Stars: 12
- Watchers: 5
- Forks: 6
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Deprecated use [portfinder](https://github.com/indexzero/node-portfinder)
# openport
Finds open network ports.
## Installation
```bash
$ npm install openport
```
## Quick Examples
```javascript
var op = require('openport'),
http = require('http');
// find an open port
op.find(function(err, port) {
if(err) { console.log(err); return; }
// yea! we have an open port.
});
// find two open ports, choosing from 1024, 1025, 1026, 1028
op.find(
{
ports: [ 1024, 1025, 1026, 1028 ],
count: 2
},
function(err, ports) {
if(err) { console.log(err); return; }
// yea! we have two open ports.
}
);
// find an open port between 1024 and 2000, but not 1025 or 1500
op.find(
{
startingPort: 1024,
endingPort: 2000,
avoid: [ 1025, 1500 ]
},
function(err, port) {
if(err) { console.log(err); return; }
// yea! we have an open port between 1024 and 2000, but not port 1025 or 1500.
}
);
// create 2 http servers
op.find(
{
count: 2,
createServer: function (port, callback) {
var server = http.createServer(function (req, res) {
});
server.port = port; // save it for later
server.once('error', function (ex) {
callback(ex);
});
server.listen(port, function () {
callback(null, server);
});
}
}, function (err, servers) {
if(err) { console.log(err); return; }
// yea! we have two web servers.
}
);
```
# API Documentation
### openport.find([options], callback)
Finds open network ports
__Arguments__
* options - (optional) - Find options
* startingPort - The port to start searching for an open port (default: 1024).
* endingPort - The port to stop searching for an open port (default: 65535).
* ports - An array of ports to search.
* count - The number of open ports to find.
* avoid - An array of ports to avoid.
* createServer - A function that will try to open a server listening on the given port. Use this when you want to make sure nobody steals your ports in between calls.
* callback(err, port/ports/servers) - Callback to be called when we have found the open ports.