time-limit-promise
Fulfill long runinng promises on timeout.
Unlike other implementations on npm it has some nice extra features:
- You can both reject and resolve promises on timeout
- You can provide custom value with which promise will be rejected or resolved on timeout
- Unrefs promise timer, so it will not block your app from exit.
- Uses
Promise
implementation of the passed promise: no external implementation dependencies, no global Promise
dependencies
Install
npm install time-limit-promise
Usage
const timeLimit = require('time-limit-promise');
const fetch = require('node-fetch');
var fetchPromise = fetch('https://github.com/inikulin');
timeLimit(fetchPromise, 50).then(res => {
});
timeLimit(fetchPromise, 50, { resolveWith: 'no content' }).then(res => {
console.log(res);
});
timeLimit(fetchPromise, 50, { rejectWith: new Error('timeout') }).catch(err => {
console.log(err.message);
});
Author
Ivan Nikulin (ifaaan@gmail.com)