How to redirect 404 errors to a page in ExpressJS?
I don't know a function for doing this, does anyone know of one?
I found this example quite helpful: https://github.com/visionmedia/express/blob/master/examples/error-pages/index.js So, it is actually this part: // "app.router" positions our routes // above the middleware defined below, // this means that Express will attempt // to match & call routes _before_ continuing // on, at which point we assume it's a 404 because // no route has handled the request. app.use(app.router); // Since this is the last non-error-handling // middleware use()d, we assume 404, as nothing else // responded. // $ curl http://localhost:3000/notfound // $ curl http://localhost:3000/notfound -H "Accept: application/json" // $ curl http://localhost:3000/notfound -H "Accept: text/plain" app.use(function(req, res, next) { res.status(404); // respond with html page if (req.accepts('html')) { res.render('404', { url: req.url }); return; } // respond with json if (req.accepts('json')) { res.json({ error: 'Not found' }); return; } // default to plain-text. send() res.type('txt').send('Not found'); });
Get this solution programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/error/73c318b18f88844b5d1abff50fef81d2bf848af7bea62d4e99f82fa443f3b1e9