KnooppuntCron
De node-cron-module is een kleine taakplanner in puur JavaScript voor node.js, gebaseerd op GNU crontab . Met deze module kunt u taken plannen in node.js met behulp van de volledige crontab-syntaxis.
Aan de slag
Installeer node-cron met behulp van npm:
1$ npm install --save node-cron
Importeer node-cron en plan een taak:
1
2
3
4
5var cron = require('node-cron');
cron.schedule('* * * * *', function(){
console.log('running a task every minute');
});
Cron-syntaxis
Dit is een korte verwijzing naar de cron-syntaxis en toont ook de opties die worden ondersteund door node-cron.
Allowed fields
1
2
3
4
5
6
7
8
9 # ┌────────────── second (optional)
# │ ┌──────────── minute
# │ │ ┌────────── hour
# │ │ │ ┌──────── day of month
# │ │ │ │ ┌────── month
# │ │ │ │ │ ┌──── day of week
# │ │ │ │ │ │
# │ │ │ │ │ │
# * * * * * *
Allowed values
veld | waarde |
---|---|
seconde | 0-59 |
minuut | 0-59 |
uur | 0-23 |
dag van de maand | 1-31 |
maand | 1-12 (of namen) |
dag van de week | 0-7 (of namen, 0 of 7 zijn zondag) |
Veelvoudige waarden gebruiken
U kunt meerdere waarden gebruiken, gescheiden door een komma:
1
2
3
4
5var cron = require('node-cron');
cron.schedule('1,2,4,5 * * * *', function(){
console.log('running every minute 1, 2, 4 and 5');
});
Bereiken gebruiken
U kunt ook een reeks waarden definiëren:
1
2
3
4
5var cron = require('node-cron');
cron.schedule('1-5 * * * *', function(){
console.log('running every minute to 1 from 5');
});
Stapwaarden gebruiken
Stapwaarden kunnen worden gebruikt in combinatie met bereiken, waarbij een bereik wordt gevolgd met '/' en een getal. Bijvoorbeeld: 1-10/2
dat is hetzelfde als 2,4,6,8,10
. Stappen zijn ook toegestaan na een asterisk, dus als je 'elke twee minuten' wilt zeggen , gebruik gewoon */2
.
1
2
3
4
5var cron = require('node-cron');
cron.schedule('*/2 * * * *', function(){
console.log('running a task every two minutes');
});
Namen gebruiken
Voor de maand en de weekdag kunt u ook namen of korte namen gebruiken, bijvoorbeeld:
1
2
3
4
5var cron = require('node-cron');
cron.schedule('* * * January,September Sunday', function(){
console.log('running on Sundays of January and September');
});
Of met korte namen:
1
2
3
4
5var cron = require('node-cron');
cron.schedule('* * * Jan,Sep Sun', function(){
console.log('running on Sundays of January and September');
});
Cron-methoden
Schedule
Plannen dat een bepaalde taak wordt uitgevoerd wanneer de cron-expressie aanvinkt.
Argumenten:
- !string-expressie - Cron-expressie
- !Functie func - Uit te voeren taak
- boolean?instantStart - Of de planner onmiddellijk na het maken moet worden gestart.
ScheduledTask-methoden
Start
Start de geplande taak.
1
2
3
4
5
6
7var cron = require('node-cron');
var task = cron.schedule('* * * * *', function() {
console.log('immediately started');
}, false);
task.start();
Stop
De taak wordt pas uitgevoerd als deze opnieuw wordt gestart.
1
2
3
4
5
6
7var cron = require('node-cron');
var task = cron.schedule('* * * * *', function() {
console.log('will execute every minute until stopped');
});
task.stop();
Destroy
De taak wordt gestopt en volledig vernietigd.
1
2
3
4
5
6
7var cron = require('node-cron');
var task = cron.schedule('* * * * *', function() {
console.log('will not execute anymore, nor be able to restart');
});
task.destroy();
Validate
Valideer dat de gegeven string een geldige cron-expressie is.
1
2
3
4var cron = require('node-cron');
var valid = cron.validate('59 * * * *');
var invalid = cron.validate('60 * * * *');
Problemen
U kunt hier problemen en verbeteringsverzoeken indienen .
Bijdragers
Over het algemeen volgen we de "fork-and-pull" Git-workflow.
- Fork de repository op GitHub;
- Wijzigingen doorvoeren in een filiaal in uw fork;
- Pull request "upstream" met uw wijzigingen;
OPMERKING: Zorg ervoor dat u de nieuwste versie van "upstream" samenvoegt voordat u een pull-verzoek indient!
Draag alstublieft geen code bij die u niet zelf heeft geschreven, tenzij u er zeker van bent dat u daartoe wettelijk bevoegd bent. Zorg er ook voor dat alle bijgedragen code kan worden gedistribueerd onder de ISC-licentie.
Licentie
node-cron staat onderISC License.