mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-13 01:15:47 +01:00
error middleware, closes #60
This commit is contained in:
@@ -43,15 +43,16 @@ var user = require('./../user.js'),
|
||||
res.send(app.build_header(res) + app.create_route("users-search", "users") + templates['footer']);
|
||||
});
|
||||
|
||||
app.get('/users/:userslug', function(req, res) {
|
||||
app.get('/users/:userslug', function(req, res, next) {
|
||||
|
||||
if(!req.params.userslug) {
|
||||
res.send("User doesn't exist!");
|
||||
next();
|
||||
return;
|
||||
}
|
||||
|
||||
user.get_uid_by_userslug(req.params.userslug, function(uid) {
|
||||
if(!uid) {
|
||||
res.redirect('/404');
|
||||
next();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -60,6 +61,7 @@ var user = require('./../user.js'),
|
||||
});
|
||||
|
||||
app.get('/users/:userslug/edit', function(req, res) {
|
||||
console.log('derp');
|
||||
if(!req.user)
|
||||
return res.redirect('/403');
|
||||
|
||||
|
||||
@@ -58,6 +58,8 @@ var express = require('express'),
|
||||
}
|
||||
|
||||
auth.initialize(app);
|
||||
|
||||
app.use(app.router);
|
||||
|
||||
app.use(function(req, res, next) {
|
||||
// Don't bother with session handling for API requests
|
||||
@@ -72,7 +74,40 @@ var express = require('express'),
|
||||
|
||||
next();
|
||||
});
|
||||
|
||||
|
||||
app.use(function(req, res, next) {
|
||||
res.status(404);
|
||||
|
||||
// respond with html page
|
||||
if (req.accepts('html')) {
|
||||
|
||||
//res.json('404', { url: req.url });
|
||||
res.redirect('/404');
|
||||
return;
|
||||
}
|
||||
|
||||
// respond with json
|
||||
if (req.accepts('json')) {
|
||||
console.log('sending 404 json');
|
||||
res.send({ error: 'Not found' });
|
||||
return;
|
||||
}
|
||||
|
||||
// default to plain-text. send()
|
||||
res.type('txt').send('Not found');
|
||||
});
|
||||
|
||||
app.use(function(err, req, res, next) {
|
||||
// we may use properties of the error object
|
||||
// here and next(err) appropriately, or if
|
||||
// we possibly recovered from the error, simply next().
|
||||
console.error(err.stack);
|
||||
|
||||
res.status(err.status || 500);
|
||||
|
||||
res.json('500', { error: err.message });
|
||||
});
|
||||
|
||||
auth.create_routes(app);
|
||||
admin.create_routes(app);
|
||||
userRoute.create_routes(app);
|
||||
|
||||
Reference in New Issue
Block a user