2.0.1 • Published 7 years ago
delayed-response v2.0.1
delayed-response 
Buffer an HTTP response and execute a function before flushing
Install
$ npm install --save delayed-responseUsage
var DelayedResponse = require('delayed-response')
server.on('request', function (req, res) {
var delayed = DelayedResponse(req, res, print)
delayed.statusCode = 201
fs.createReadStream('data.txt')
.pipe(delayed)
.on('error', function (err) {
res.statusCode = 500
res.end(err.message)
})
})
function print (delayed, data, callback) {
console.log(data.toString())
callback()
}API
DelayedResponse(req, res, callback) -> object
Returns a delayed instance which proxies an http.ServerResponse. Delayed responses emit errors returned from the supplied callback. Make sure to handle the 'error' event on your response or use an abstraction like pump.
req
Required
Type: object
res
Required
Type: object
The original http.ServerResponse.
callback
Required
Type: function
Arguments: req, delayed, buffer, done
A callback to call with the delayed response, the full data buffer (a Buffer), and a done function. Passing an error to done will cause the delayed request to reset the original response headers and then emit an error. Otherwise, the buffered data is re-sent.
License
MIT © Ben Drucker