在每条路线上发布功能

时间:2015-01-29 13:27:21

标签: node.js express mongoose mean-stack

目前我在每条路线上复制相同的.post方法,因为我希望每条路线都有这种方法。有没有其他方法可以使所有路由具有相同的方法而不重复它?

实施例: 对于每个路由,用户都可以将某些内容发布到数据库中。

api.js

api.route('/')
   .post(function(req, res) {
         var story = ({
            content: req.body.content;
         });
    story.save();

   });


api.route('/profile')

 .post(function(req, res) {
         var story = ({
            content: req.body.content;
         });
    story.save();

   });

只是为了获取信息,每条路线只能执行一个.get或.post方法吗?

1 个答案:

答案 0 :(得分:0)

将逻辑包裹在函数内:

var yourFunction = function(req, res) {
   var story = ({
      content: req.body.content;
   });
   story.save();
});

并将其传递给您的路线定义:

api.route('/').post(yourFunction);
api.route('/profile').post(yourFunction);
  

每条路线只能执行一个.get或.post方法吗?

你可以:

api.route('/').get(yourFunction);
api.route('/').post(yourOtherFunction);

但你不能拥有:

api.route('/').get(yourFunction);
api.route('/').get(yourOtherFunction);

在后者中,express将考虑最后一个。