request-closed
Middleware that detects when the incoming HTTP request was closed prematurely and sets a property indicating as much.
request-closed is designed to be used as middleware within a Node.js web application. It has been tested with Express,
but may also work with other frameworks. If you test this with another framework and find it to work, let me know and
I'll update the docs.
This library is useful for times when you want to statically check the state of the request before performing some
action (e.g. updating a database). If you need an event driven model, the req.on('close', function() { ... })
event handler will suit your needs better.
Set up
request-closed should be placed before any route definitions.
var express = require('express');
var requestClosed = require('request-closed');
var app = express();
...
app.use(requestClosed());
Usage
Once the middleware is in place, it will add a boolean isClosed
property to the request object. This property will
evaluate to false
initially, and will flip to true
if the request is closed before a response is sent.
if (req.isClosed) {
// throw an exception, or take some alternate action
}