在输入之前创建预处理器功能

时间:2014-03-25 08:46:25

标签: node.js express

我有一个游戏服务器,输入按需工作。别人写了它,但在离开公司之前没有完成,我现在必须建立它。 这家伙忘了做一些基本的事情,比如(检查多记录,解码变量等)。 它有很多功能,重建它们需要一周的时间。

app.post('/productionFarm', function(req, res) {
(...)
app.post('/skipProductionFarm') {
(...)
//and about 200 more

你知道任何好的解决方案,如何做预处理器功能(所有输入都有一个功能),在post输入后会先做一些代码,然后继续或不做app.post查询?。

1 个答案:

答案 0 :(得分:1)

如果我正确理解您的问题,您希望在任何POST路由之前运行一个函数。使用中间件非常简单:

app.post('/*', function(req, res, next) {
    if(checkInputs(req)) {
        // check successful
        next();
    } else {
         // either handle the error directly
         res.send(400, 'Bad request');
         // or use a separate error handling middleware
         next(new Error('Bad request'));
    }
});

请注意,这必须在您的app.post来电之前进行。

http://expressjs.com/3x/api.html#app.use