Express,body-parser不解析表单数据+对象(使用Angularjs $ resource)

时间:2015-01-24 21:34:04

标签: angularjs node.js parsing express body-parser

我正在学习angular.js $资源。在文档中的示例中,我有自定义方法

// some stuff
  {charge: {method:'POST', params:{charge:true}} //declaring custom method
// some stuff
// and then call the this method
card.$charge({amount:9.99});
// It makes POST: /user/123/card/456?amount=9.99&charge=true {id:456, number:'1234', name:'J. Smith'}

问题是 我的快递应用只解析对象,并且错过了amount=9.99&charge=true。但是,如果我只发送amount=9.99&charge=true对象(不是通过angular的$ resource),它就可以解析。如果我只发送对象,则相同。但不是两个。 所以我无法得到charge=true这真的是必要的。我甚至可能没有得到对象,但Angular的$ recourse默认附加它,所以当我调用自定义方法时我不知道如何阻止附加对象

我正在使用: 使用配置表达4 正文解析器

app.use(bodyParser.urlencoded({
   extended: true
}));
app.use(bodyParser.json());
app.use(methodOverride());

multer

所以,亲爱的社区请帮助。我打破了我的头2个小时。

1 个答案:

答案 0 :(得分:0)

根据你的$ resource声明,

card.$charge({amount:9.99});

这将发送一条带有查询的amount=9.99&charge=true POST请求,以便访问使用明确使用req.query.amountreq.query.charge的人。