express-http-proxy
express-http-proxy copied to clipboard
Question: How to cancel the request and return 401?
We want to check specific headers (say X-API-Key) and cancel the proxy request if they are incorrect.
We've tried putting the logic in a filter()
function but return false
does not cancel the request - it passes the request on to the next handler in express. Even if we .status(401).send().end()
the request is still passed on to the next handler.
filter: function(req, res) {
if (req.header('x-api-key') !== 'secretkey') {
res.status(401).send('Invalid X-API-Key!').end(); // This works for the client
return false; // This causes an express error on the server
}
return true;
},
How can we cancel/block the request from being proxied?