ExpressJS bodyParser:对象数组

时间:2016-06-15 23:41:51

标签: javascript node.js express

我正在构建一个可以具有可变数量输入的表单(用户可以复制表单元素)。当我尝试创建没有索引的对象数组时,对象值在数组中组合在一起,而不是分组为对象数组。有没有办法在不指定对象索引的情况下执行此操作?

这是我没有索引的帖子数据:

data[message][attachment][payload][elements][buttons][][title]="test 1"
data[message][attachment][payload][elements][buttons][][url]="http://www.com"
data[message][attachment][payload][elements][buttons][][type]="post"
data[message][attachment][payload][elements][buttons][][title]="test 2"
data[message][attachment][payload][elements][buttons][][url]="http://other.com"
data[message][attachment][payload][elements][buttons][][type]="get"

当我在ExpressJS中使用console.log(req.body.data)时,我看到了,这不是我想要的:

{
     "message": {
         "attachment": {
             "payload": {
                 "elements": [{
                     "buttons": [{
                         "title": ["test 1", "test 2"],
                         "url": ["http://www.com", "http://other.com"],
                         "type": ["post", "get"]
                     }]
                 }]
             }
         }
     }
 }

这是我的带有索引的帖子数据:

data[message][attachment][payload][elements][buttons][0][title]="test 1"
data[message][attachment][payload][elements][buttons][0][url]="http://www.com"
data[message][attachment][payload][elements][buttons][0][type]="post"
data[message][attachment][payload][elements][buttons][1][title]="test 2"
data[message][attachment][payload][elements][buttons][1][url]="http://www.com"
data[message][attachment][payload][elements][buttons][1][type]="get"

当我在ExpressJS中使用console.log(req.body.data)时,我看到:

{
    "message": {
        "attachment": {
            "payload": {
                "elements": [{
                    "buttons": [{
                        "title": "test 1",
                        "url": "http://www.com",
                        "type": "post"
                    }, {
                        "title": "test 2",
                        "url": "http://other.com",
                        "type": "get"
                    }]
                }]
            }
        }
    }
}

这正是我所追求的。任何帮助将不胜感激!

0 个答案:

没有答案