choke

Function call throttling with hook for cancelling

choke

Function call throttling with hook for cancelling

var choke = require("choke")
var EventSource = require("eventsource-reconnect")
var setInterval = require("timers").setInterval
 
var source = new EventSource("http://localhost:1234/events")
var reconnect = choke(source.reconnect, 15000)
 
source.onopen = reconnect.cancel    // kill any outstanding reconnect attempts 
 
setInterval(function ()) {
    if (source.readyState === source.CLOSED) {
        source.onclose = reconnect.listener // throttle reconnects to 15 secs 
    }
}, 1000)

npm install choke

  • Matt-Esch