最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

使用快递,我可以自动修剪在req.body所有传入的POST方法领域?

IT培训 admin 7浏览 0评论

使用快递,我可以自动修剪在req.body所有传入的POST方法领域?

我开始以使用express-form我的API(快速3.3.8)修剪开头和结尾的空白关闭传入POST方法字段。

不过,我相信使用它,我必须在我的中间件表单字段和规则,以我的路线,像这样:

app.post('/api/test', form( field("username").trim(), field("password").trim(), function(req, res...

我的问题是,有没有办法做装饰自动无单独指定的字段?我知道的配置选项:autoTrim,但我想我还需要每路径/中间件基础上指定的领域,对不对?我试图离开它的中间件,而只是做了form.configure({autoTrim:true}),但没有与req.body领域的变化。一样的,如果我从未纳入express-form可言。

我不承诺express-form。如果有另一种方法已经提供给有快递总是修剪传入req.body领域,请让我知道。

回答如下:

因为它似乎一个必须单独使用express-form声明领域,我决定写我自己的空白修剪中间件现在,因为我无法找到一个现有的简单的解决方案。我用underscore.js,所以你会看到它使用了其map功能。否则,你可以做你自己的循环与天然Object.keys或相似。这完全重写所有字段req.body!请注意,这是一个权宜的更大的验证问题。我们只是在做这个暂时直到我们有时间来清理验证为一体。这里是我的代码(当然app.use(app.router)前放)

var trimmer = function(req, res, next){
  req.body = _.object(_.map(req.body, function (value, key) {
    return [key, value.trim()];
  }));
  next();
}

app.use(trimmer);

使用快递,我可以自动修剪在req.body所有传入的POST方法领域?

我开始以使用express-form我的API(快速3.3.8)修剪开头和结尾的空白关闭传入POST方法字段。

不过,我相信使用它,我必须在我的中间件表单字段和规则,以我的路线,像这样:

app.post('/api/test', form( field("username").trim(), field("password").trim(), function(req, res...

我的问题是,有没有办法做装饰自动无单独指定的字段?我知道的配置选项:autoTrim,但我想我还需要每路径/中间件基础上指定的领域,对不对?我试图离开它的中间件,而只是做了form.configure({autoTrim:true}),但没有与req.body领域的变化。一样的,如果我从未纳入express-form可言。

我不承诺express-form。如果有另一种方法已经提供给有快递总是修剪传入req.body领域,请让我知道。

回答如下:

因为它似乎一个必须单独使用express-form声明领域,我决定写我自己的空白修剪中间件现在,因为我无法找到一个现有的简单的解决方案。我用underscore.js,所以你会看到它使用了其map功能。否则,你可以做你自己的循环与天然Object.keys或相似。这完全重写所有字段req.body!请注意,这是一个权宜的更大的验证问题。我们只是在做这个暂时直到我们有时间来清理验证为一体。这里是我的代码(当然app.use(app.router)前放)

var trimmer = function(req, res, next){
  req.body = _.object(_.map(req.body, function (value, key) {
    return [key, value.trim()];
  }));
  next();
}

app.use(trimmer);
发布评论

评论列表 (0)

  1. 暂无评论